SDK & Tích Hợp
LangChain
Sử dụng TokSpan làm nhà cung cấp mô hình LangChain cho RAG, agent, đầu ra có cấu trúc và gọi công cụ — với quyền truy cập vào tất cả các mô hình qua một endpoint duy nhất.
Thiết Lập
TokSpan hoạt động như một nhà cung cấp ChatOpenAI thay thế trực tiếp. Chỉ cần đổi openai_api_base:
python
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model="gpt-4o",
openai_api_key="sk-your-key",
openai_api_base="https://api.tokspan.com/v1",
temperature=0.7,
)Chuyển đổi mô hình: Đổi
model="gpt-4o" thành model="claude-opus-4-8" hoặc bất kỳ model ID nào khác — mã LangChain của bạn giữ nguyên. Không cần code path riêng cho từng nhà cung cấp.Chain Cơ Bản (LCEL)
python
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
prompt = ChatPromptTemplate.from_messages([
("system", "You are a helpful assistant."),
("user", "{input}"),
])
chain = prompt | llm | StrOutputParser()
response = chain.invoke({"input": "Explain quantum computing in simple terms."})
print(response)RAG (Tạo Sinh Tăng Cường Truy Xuất)
Dùng TokSpan cho cả embeddings và generation trong cùng một pipeline RAG:
python
from langchain_core.documents import Document
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_openai import OpenAIEmbeddings
# 1. Embed your documents
embeddings = OpenAIEmbeddings(
model="text-embedding-3-large",
openai_api_key="sk-your-key",
openai_api_base="https://api.tokspan.com/v1",
)
# 2. Split and store (use a vector DB for production)
text_splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=200)
docs = text_splitter.create_documents([your_text])
vector_store = FAISS.from_documents(docs, embeddings)
# 3. Retrieve + generate
from langchain.chains import create_retrieval_chain
from langchain.chains.combine_documents import create_stuff_documents_chain
qa_chain = create_retrieval_chain(vector_store.as_retriever(), create_stuff_documents_chain(llm, prompt))
result = qa_chain.invoke({"input": "What is the refund policy?"})Agent Gọi Công Cụ
Tạo agent có thể gọi hàm của bạn — mọi mô hình hỗ trợ function calling đều hoạt động với mẫu này:
python
from langchain.agents import create_tool_calling_agent, AgentExecutor
def get_weather(city: str) -> str:
return f"Weather in {city}: 22°C, partly cloudy"
tools = [get_weather]
agent = create_tool_calling_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools)
result = executor.invoke({"input": "What's the weather in Tokyo?"})
print(result["output"])Thư Viện Tương Thích Khác
Mọi thư viện tương thích OpenAI đều hoạt động với TokSpan — chỉ cần đổi base URL:
| Thư Viện | Cách Cấu Hình |
|---|---|
| LlamaIndex | Đặt biến môi trường OPENAI_API_BASE="https://api.tokspan.com/v1" |
| Vercel AI SDK | createOpenAI({ baseURL: 'https://api.tokspan.com/v1', apiKey: 'sk-...' }) |
| CrewAI | Đặt biến môi trường OPENAI_API_BASE |
| AutoGen | Cấu hình base_url trong cấu hình OpenAI client |
| Flowise | Thêm credential tương thích OpenAI tùy chỉnh với base URL của TokSpan |
| Dify | Thêm nhà cung cấp mô hình tương thích OpenAI với endpoint của TokSpan |