精简示例
精简示例
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_openai import OpenAIEmbeddings
from langchain_chroma import Chroma
with open("doc.md", encoding="utf-8") as f:
text = f.read()
splitter = RecursiveCharacterTextSplitter(chunk_size=800, chunk_overlap=120)
chunks = splitter.split_text(text)
store = Chroma.from_texts(chunks, OpenAIEmbeddings(model="text-embedding-3-small"))
retriever = store.as_retriever(search_kwargs={"k": 4})
for doc in retriever.invoke("问题文本"):
print(doc.page_content[:120])0.2 之后切分器在独立包 langchain-text-splitters,向量库封装也拆到 langchain-chroma 等独立包;安装时按报错补齐依赖。