> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mixroute.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# LangChain

> LangChain 开发框架集成指南

## 一、简介

LangChain 是一个用于开发基于语言模型的应用程序的强大框架。通过集成 **MixRoute**，可在 LangChain 中灵活调用各类主流 AI 模型。

## 二、快速开始

### 1. 安装依赖

```bash theme={null}
pip install langchain langchain-openai
```

### 2. 基础配置

```python theme={null}
import os
from langchain_openai import ChatOpenAI

os.environ["OPENAI_API_KEY"] = "您的 MMixRoute API 密钥"
os.environ["OPENAI_BASE_URL"] = "https://api.mixroute.ai/v1"

llm = ChatOpenAI(
    model="gpt-5.5",
    temperature=0.7
)
```

## 三、核心功能

### 1. 基础对话

```python theme={null}
from langchain.schema import HumanMessage, SystemMessage

messages = [
    SystemMessage(content="你是一个有帮助的助手"),
    HumanMessage(content="介绍一下 Python 的主要特点")
]

response = llm.invoke(messages)
print(response.content)
```

### 2. 对话链（带记忆）

```python theme={null}
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain

memory = ConversationBufferMemory()
conversation = ConversationChain(llm=llm, memory=memory, verbose=True)

conversation.predict(input="我想学习机器学习")
conversation.predict(input="推荐一些入门资源")
```

### 3. 文档问答系统（RAG）

```python theme={null}
from langchain.document_loaders import TextLoader
from langchain.text_splitter import CharacterTextSplitter
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import FAISS
from langchain.chains import RetrievalQA

embeddings = OpenAIEmbeddings(
    api_key="您的 Mixroute Api 密钥",
    base_url="https://api.mixroute.ai/v1"
)

loader = TextLoader("document.txt")
documents = loader.load()

text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
texts = text_splitter.split_documents(documents)

vectorstore = FAISS.from_documents(texts, embeddings)

qa = RetrievalQA.from_chain_type(
    llm=llm,
    chain_type="stuff",
    retriever=vectorstore.as_retriever()
)

result = qa.run("文档中的关键概念是什么？")
```

## 四、模型切换

```python theme={null}
gpt4 = ChatOpenAI(
    model="gpt-5.5",
    api_key="您的 Mixroute Api 密钥",
    base_url="https://api.mixroute.ai/v1"
)

claude = ChatOpenAI(
    model="claude-opus-4-8",
    api_key="您的 Mixroute Api 密钥",
    base_url="https://api.mixroute.ai/v1"
)
```
