LangChain + EXAIV: Palitan ang Model Provider nang Isang Linya (Python/JS)
Ituro ang ChatOpenAI ng LangChain sa OpenAI-compatible endpoint ng EXAIV: buong Python at TypeScript examples, streaming, tool calling, at mga karaniwang error
LangChain + EXAIV: Palitan ang Model Provider nang Isang Linya (Python/JS)
Native na sumusuporta ang ChatOpenAI ng LangChain sa custom base_url — ituro ito sa OpenAI-compatible endpoint ng EXAIV at tatakbo ang mga chains, agents, at RAG pipelines mo sa model pool ng EXAIV nang walang structural na pagbabago
Python
@PYCODE@
I-install: pip install langchain-openai
JavaScript / TypeScript
@JSCODE@
I-install: npm install @langchain/openai
Streaming
Gumagana nang walang pagbabago ang streaming abstraction ng LangChain sa custom base_url — ang events ay ipinapasa ayon sa OpenAI-compatible protocol
@STREAMCODE@
Agents at tool calling
Ang mataas na antas na wrappers tulad ng create_agent / create_react_agent ay tumatanggap ng parehong llm instance. Ang tool calls ay sumusunod sa standard na OpenAI function calling protocol na buong ipinapasa ng EXAIV endpoint
@ SWT@
Ang pagpapalit ng modelo sa LangChain = pagbabago ng model string. Ang available na mga modelo ay ang endpoint list (tingnan ang models page) — hal. deepseek-v4-flash, glm-5.3, claude-opus-4-8-fd — lahat pwede sa parehong key
Mga karaniwang problema
| Sintomas | Unang tingnan |
|---|---|
| 401 | AuthenticationError: hindi kumpleto o invalidated ang na-paste na key o opisyal na OpenAI key ang nagamit nang pagkakamali |
| 404 | NotFoundError: kulang ang /v1 sa base_url; ang EXAIV standard ay https://exaiv.com/api/ai/v1 |
| Timeout | Mahaba ang complex agent turns, magtakda ng mas mahabang client timeout |
Advanced: RAG at agents
RAG: walang karagdagang configuration ang retriever → llm pipeline — ang base_url ay umaapply sa buong chain. Palitan ang retriever ng sarili mong vector store (FAISS/Milvus atbp.); ang EXAIV ang humahawak ng generation stage.
Structured output: gumagana ang .with_structured_output(Pydantic model) sa endpoint ayon sa OpenAI semantics — perpekto para kuhain ang mga field mula sa unstructured text.
Multi-model collaboration: pwedeng gumawa ng dalawang ChatOpenAI sa isang agent — mabilis para sa planning, flagship para sa execution — hiwalay ang billing ng bawat isa. Karaniwang pattern ito para mapanatili sa control ang gastos ng agent.
Observability: ang LangSmith at iba pang tracing tools ay gumagamit ng standard callbacks at hindi nagkakalakip sa custom base_url, para madaling mahanap kung aling hakbang ang lumagpas sa inaasahang token.
Paalala sa data at operasyon
Ang nilalaman na ipinapadala sa modelo ay siningil bilang credits ayon sa totoong paggamit — magsimula sa maliit na volume para sukatin ang gastos bago palakihin, at regular na bantayan sa console. Para sa sensitibong data, basahin muna ang data processing terms ng provider bago ilagay sa produksyon. May karagdagang detalye sa privacy policy.
Mga setting na dapat regular na tingnan: ang bagong bersyon ng SDK/library ay maaaring magpabago ng connection behavior; at bawat pagpapalit ng modelo, patakbuhin muli ang lumang test suite para siguradong nananatiling maayos ang output bago i-update ang produksyon.