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ệnCách Cấu Hình
LlamaIndexĐặt biến môi trường OPENAI_API_BASE="https://api.tokspan.com/v1"
Vercel AI SDKcreateOpenAI({ baseURL: 'https://api.tokspan.com/v1', apiKey: 'sk-...' })
CrewAIĐặt biến môi trường OPENAI_API_BASE
AutoGenCấu hình base_url trong cấu hình OpenAI client
FlowiseThêm credential tương thích OpenAI tùy chỉnh với base URL của TokSpan
DifyThêm nhà cung cấp mô hình tương thích OpenAI với endpoint của TokSpan