LangChain Integration — ML Junction docs
langchain-mljunction is an independent native integration maintained by ML Junction. It subclasses LangChain BaseChatModel and Embeddings directly and calls /v1/responses and /v1/embeddings; it does not wrap ChatOpenAI.
pip install langchain-mljunction export MLJUNCTION_API_KEY="..." export MLJUNCTION_BASE_URL="https://api.mljunction.com"
from langchain_mljunction import ChatMLJunction
llm = ChatMLJunction(
model="gpt-5.5",
temperature=0.2,
reasoning={"enabled": True, "effort": "medium"},
requirements={"reasoning": "preferred", "tools": "preferred"},
routing={
"strategy": "balanced",
"service_tier": "auto",
"require_zdr": True,
"max_platform_charge_usd": 0.05,
"fallbacks": {"provider": True, "model": True, "max_total_attempts": 3},
},
context={"mode": "auto_fit", "preserve_tool_chains": True},
session_name="support-session",
task_name="triage",
app_name="support-agent",
)
response = llm.invoke("Triage this incident")
print(response.content)
print(response.response_metadata["routing"])
print(response.response_metadata["receipt"])
Constructor control · Native request field temperature, top_p, seed, frequency_penalty, presence_penalty · sampling.* max_tokens and output · output.max_tokens and output format/validation reasoning · reasoning enabled/effort/intensity/summary requirements · Required/preferred tools, schema, modalities, reasoning, context routing · All strategy, provider, tier, privacy, BYOK, cap, fallback, sticky controls context · Fitting mode, budget/reserve, preservation controls session/task/app fields · Durable observability identity metadata, idempotency_key, compatibility · Native metadata and execution controls
Use bind_tools for LangChain tools, with_structured_output for Pydantic or JSON Schema results, stream/astream for SSE, and MLJunctionEmbeddings for governed embeddings. Structured-output streams intentionally return one complete chunk so parsers never receive partial JSON; ordinary text and bound-tool streams remain incremental. include_raw=True returns LangChain's standard raw/parsed/parsing_error dictionary. Standard usage lives in usage_metadata; request ID, route, receipt, warnings, identity, and reasoning state live in response_metadata.
Because this is native, ML Junction features are not compressed into OpenAI fields. The trade-off is that applications intentionally coupled to langchain-mljunction cannot swap to ChatOpenAI without removing ML Junction-specific governance controls.
Canonical URL: https://mljunction.com/docs/langchain-integration