◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
大家好!本文将介绍我的应用iris-rag-gen,这是一款利用iris矢量搜索功能的生成式ai检索增强生成(rag)应用。它结合了streamlit web框架、langchain和openai,能够个性化chatgpt的交互体验,并以iris作为矢量数据库。
核心功能:
文档导入流程:
导入过程会将文档信息存储到rag_documents表,并创建相应的矢量数据表(例如rag_document_id)。
文档导入核心代码片段:
from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.document_loaders import PyPDFLoader, TextLoader from langchain_iris import IrisVector from langchain_openai import OpenAIEmbeddings from sqlalchemy import create_engine, text class RagOpr: # ... (代码略,与原文相同) ...
矢量数据检索SQL语句示例:
SELECT TOP 5 id, embedding, document, metadata FROM sqluser.rag_document2
智能问答流程:
智能问答核心代码片段:
from langchain_iris import IRISVector from langchain_openai import OpenAIEmbeddings, ChatOpenAI from langchain.chains import ConversationChain from langchain.chains.conversation.memory import ConversationSummaryMemory class RagOpr: def ragSearch(self, prompt, id): # ... (代码略,与原文相同) ...
更多详细信息,请访问iris-rag-gen项目页面。感谢您的阅读!
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。