马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
配景
- 在网上找到个案例
- langchain本地知识库问答机器人集成本地知识库
- 下面是文章的代码
复制代码- from langchain.embeddings.openai import OpenAIEmbeddings
- from langchain.vectorstores import Chroma
- from langchain.text_splitter import CharacterTextSplitter
- from langchain import OpenAI,VectorDBQA
- from langchain.document_loaders import DirectoryLoader
- from langchain.chains import RetrievalQA
- # 加载文件夹中的所有txt类型的文件
- loader = DirectoryLoader('/content/sample_data/data/', glob='**/*.txt')
- # 将数据转成 document 对象,每个文件会作为一个 document
- documents = loader.load()
- # 初始化加载器
- text_splitter = CharacterTextSplitter(chunk_size=100, chunk_overlap=0)
- # 切割加载的 document
- split_docs = text_splitter.split_documents(documents)
- # 初始化 openai 的 embeddings 对象
- embeddings = OpenAIEmbeddings()
- # 将 document 通过 openai 的 embeddings 对象计算 embedding 向量信息并临时存入 Chroma 向量数据库,用于后续匹配查询
- docsearch = Chroma.from_documents(split_docs, embeddings)
- # 创建问答对象
- qa = VectorDBQA.from_chain_type(llm=OpenAI(), chain_type="stuff", vectorst
复制代码 |