SDK 與整合

LangChain

將 TokSpan 作為您的 LangChain 模型供應商,用於 RAG、Agent、結構化輸出及工具呼叫 — 透過單一端點存取所有模型。

設定

TokSpan 可作為 ChatOpenAI 的即插即用供應商。只需更改 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,
)
模型切換:model="gpt-4o" 更改為 model="claude-opus-4-8" 或任何其他模型 ID——您的 LangChain 程式碼保持不變。無需為不同供應商撰寫特定程式碼路徑。

基本 Chain(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(檢索增強生成)

在單一 RAG 管線中同時使用 TokSpan 進行嵌入與生成:

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

建立可呼叫您函式的 Agent——所有支援 Function Calling 的模型皆可使用此模式:

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"])

其他相容的程式庫

所有相容 OpenAI 的程式庫皆可與 TokSpan 搭配使用——只需更改 Base URL:

程式庫設定方式
LlamaIndex設定環境變數 OPENAI_API_BASE="https://api.tokspan.com/v1"
Vercel AI SDKcreateOpenAI({ baseURL: 'https://api.tokspan.com/v1', apiKey: 'sk-...' })
CrewAI設定 OPENAI_API_BASE 環境變數
AutoGen在 OpenAI 客戶端設定中配置 base_url
Flowise新增自訂的 OpenAI 相容憑證,使用 TokSpan Base URL
Dify新增 OpenAI 相容的模型供應商,使用 TokSpan 端點