Skip to main content

Class: LangChatEngine

Main engine for LangChat library. Handles initialization of adapters and chat processing.

Constructor

LangChatEngine(config: Optional[LangChatConfig] = None)
Parameters:
config
LangChatConfig | None
default:"None"
LangChat configuration. If None, uses default config.

Methods

async chat()

Process a chat query.
async def chat(
    self,
    query: str,
    user_id: str,
    domain: str = "default",
    standalone_question: Optional[str] = None
) -> dict
Parameters:
query
str
required
User query text
user_id
str
required
User identifier
domain
str
default:"default"
User domain
standalone_question
str | None
default:"None"
Optional standalone question (if already generated)
Returns: dict - Response dictionary with response, user_id, timestamp, status, response_time

get_session()

Get or create a user session.
def get_session(
    self,
    user_id: str,
    domain: str = "default"
) -> UserSession
Parameters:
user_id
str
required
User identifier
domain
str
default:"default"
User domain
Returns: UserSession - User session instance

Properties

  • config: LangChatConfig instance
  • llm: OpenAILLMService instance
  • vector_adapter: PineconeVectorAdapter instance
  • reranker_adapter: FlashrankRerankAdapter instance
  • supabase_adapter: SupabaseAdapter instance
  • id_manager: IDManager instance
  • sessions: Dict[str, UserSession] - Active sessions