当前位置: 首页 > news >正文

甘肃省建设工程168网站东营智能网站设计

甘肃省建设工程168网站,东营智能网站设计,wordpress 缩减sql,免费手机app制作软件LangChain LangChain是一个软件开发框架#xff0c;可以更轻松地使用大型语言模型#xff08;LLM#xff09;创建应用程序。它是一个具有 Python 和 JavaScript 代码库的开源工具。LangChain 允许开发人员将 GPT-4 等 LLM 与外部数据相结合#xff0c;为聊天机器人、代码理… LangChain LangChain是一个软件开发框架可以更轻松地使用大型语言模型LLM创建应用程序。它是一个具有 Python 和 JavaScript 代码库的开源工具。LangChain 允许开发人员将 GPT-4 等 LLM 与外部数据相结合为聊天机器人、代码理解、摘要等各种应用程序开辟了可能性。 LangChain模块 LangChain将其功能分组到以下模块中 模型提示链代理记忆文档加载程序和索引 提示 提示是指模型输入。在前面的部分中您将提示硬编码为 LLM 和聊天模型。此技术不适用因为在生产环境中不会收到硬编码的完整文本提示。相反您将收到来自用户的简洁输入您将希望将其转换为提示。 模型 LangChain支持三种类型的模型 大型语言模型聊天模型文本嵌入模型 链 链允许您同时运行多个LangChain模块。例如使用链您可以同时运行提示符和 LLM从而避免了首先格式化 LLM 模型的提示然后使用模型在单独的步骤中执行它。 LangChain支持三种主要类型的链 简单的 LLM 链顺序链定制链 代理 LangChain代理涉及LLM来执行以下步骤 根据用户输入或其先前的输出确定要执行的操作。执行操作。观察输出。重复前三个步骤直到它尽其所能完成用户输入中定义的任务。 RAG Architecture 典型的 RAG 应用程序有两个主要组件 索引Indexing 用于从源获取数据并为其建立索引的管道。这通常发生在离线状态。 提取和生成Retriever and generation 实际的 RAG 链它在运行时接受用户查询并从索引中检索相关数据然后将其传递给模型。 索引Indexing Load 首先需要加载数据通过DocumentLoaders完成 Split Text splitters将large Documents分成更小的chunks。这对于索引数据和将其传递到模型都很有用因为大块更难搜索并且不适合模型的有限上下文窗口。 Store 存储和索引我们的分割这通常是使用 VectorStore 和 Embeddings 模型来完成的。 矢量数据库 Chroma 是一个用于构建具有嵌入的 AI 应用程序的数据库。 数据量庞大的知识、新闻、文献、语料等先通过嵌入embedding算法转变为向量数据然后存储在Chroma等向量数据库中。当用户在大模型输入问题后将问题本身也embedding转化为向量在向量数据库中查找与之最匹配的相关知识组成大模型的上下文将其输入给大模型最终返回大模型处理后的文本给用户这种方式不仅降低大模型的计算量提高响应速度也降低成本并避免了大模型的tokens限制是一种简单高效的处理手段。  主流的向量数据库对比如下所示 向量数据库URLGitHub StarLanguagechromahttps://github.com/chroma-core/chroma7.4KPythonmilvushttps://github.com/milvus-io/milvus21.5KGo/Python/Cpineconehttps://www.pinecone.io/❌❌qdranthttps://github.com/qdrant/qdrant11.8KRusttypesensehttps://github.com/typesense/typesense12.9KCweaviatehttps://github.com/weaviate/weaviate6.9KGo 在这里我们使用chroma 提取和生成Retrieval and generation Retrieve给定用户输入使用检索器从存储中检索相关分割。GenerateChatModel / LLM 使用包含问题和检索到的数据的提示生成答案 实例 import os import bs4 from langchain import hub from langchain_community.document_loaders import WebBaseLoader from langchain_community.vectorstores import Chroma from langchain_core.output_parsers import StrOutputParser from langchain_core.runnables import RunnablePassthrough from langchain_openai import ChatOpenAI, OpenAIEmbeddings from langchain_text_splitters import RecursiveCharacterTextSplitter from langchain_community.document_loaders import PyPDFLoader # Load, chunk and index the contents of the blog. print(Starting..........) os.environ[OPENAI_API_KEY] sk-xxxxxxxx os.environ[OPENAI_BASE_URL] https://api.chatanywhere.tech/v1 print(Loading.....) #loader WebBaseLoader( # web_paths(https://lilianweng.github.io/posts/2023-06-23-agent/,), # bs_kwargsdict( # parse_onlybs4.SoupStrainer( # class_(post-content, post-title, post-header) # ) # ), #) loader PyPDFLoader(example_data/计算机信息模型导论2024.pdf) docs loader.load() print(Loadded....) text_splitter RecursiveCharacterTextSplitter(chunk_size1000, chunk_overlap200) splits text_splitter.split_documents(docs) vectorstore Chroma.from_documents(documentssplits, embeddingOpenAIEmbeddings(),persist_directory./vector_store)# Retrieve and generate using the relevant snippets of the blog. retriever vectorstore.as_retriever() prompt hub.pull(rlm/rag-prompt) print(RAG....) llm ChatOpenAI(model_namegpt-3.5-turbo,base_urlhttps://api.chatanywhere.tech/v1, temperature0)def format_docs(docs):return \n\n.join(doc.page_content for doc in docs)rag_chain ({context: retriever | format_docs, question: RunnablePassthrough()}| prompt| llm| StrOutputParser() ) print(rag_chain.invoke(what is OPCUA 变量类型 请中文回答)) # cleanup #vectorstore.delete_collection() 计算机信息模型导论2024.pdf是我正在写的一本书。介绍计算机信息模型其中包含了OPCUA 的基本知识。         Chroma 矢量数据库默认是存储在内存中的。如果设置了永久存储目录的位置persist_directory它会存放在指定的目录中。一旦文档的矢量数据存储在文件中提问可以不需要每次读pdf文件程序简化为 import os from langchain import hubfrom langchain_community.vectorstores import Chroma from langchain_core.output_parsers import StrOutputParser from langchain_core.runnables import RunnablePassthrough from langchain_openai import ChatOpenAI,OpenAIEmbeddings# Load, chunk and index the contents of the blog.os.environ[OPENAI_API_KEY] sk-xxxxxxxxx os.environ[OPENAI_BASE_URL] https://api.chatanywhere.tech/v1 embedding OpenAIEmbeddings(openai_api_keyos.environ[OPENAI_API_KEY] ) vectorstore Chroma(persist_directory./vector_store,embedding_functionembedding)# Retrieve and generate using the relevant snippets of the blog. retriever vectorstore.as_retriever() prompt hub.pull(rlm/rag-prompt) print(RAG....) llm ChatOpenAI(model_namegpt-3.5-turbo,base_urlhttps://api.chatanywhere.tech/v1, temperature0)def format_docs(docs):return \n\n.join(doc.page_content for doc in docs)rag_chain ({context: retriever | format_docs, question: RunnablePassthrough()}| prompt| llm| StrOutputParser() ) print(rag_chain.invoke(what is OPCUA 变量类型 请中文回答))
http://www.zqtcl.cn/news/165262/

相关文章:

  • 网站跨机房建设方案山西运城市建设局网站
  • 网站被k文章修改设计师图片素材
  • 建设银行益阳市分行桃江支行网站9377烈焰传奇手游官网
  • 网站收费怎么做沈阳建设工程信息网 等级中项网
  • 做网站后台教程视频杭州网站开发建设
  • 维度 网站建设优秀vi设计网站
  • 快速搭建网站工具海洋网络做网站不负责
  • 做电影资源网站服务器怎么选wordpress唱片公司模板
  • 医院网站建设投标要求wordpress文章的表是什么
  • 怎么做网站后门海外营销推广
  • 网站建设中英版网站要做手机版怎么做的
  • 安徽网站开发与维护专业阜阳建设部网站
  • 山东省住房和建设厅网站网站优化大计
  • 大良建网站织梦建设两个网站 视频
  • 用html5制作个人网站航空港建设局网站
  • 祥云平台建站网站备案通过什么可以备案
  • 免费建造网站系统php和wordpress
  • 九脉堂是做网站的网站权重不稳定
  • 网站怎么做来流量门户网站的发布特点
  • 网站设计相似侵权吗免费游戏网站建设
  • 湖北长安建设网站制作一个网站的步骤是什么
  • js网站开发成都房地产最新政策
  • 天津网站制作维护无锡网络推广外包
  • 国外中文网站排行娱乐新闻做的好的网站
  • 零食网站建设需求分析规划设计网址
  • 建立网站备案的法律依据wordpress 招商系统
  • 建设银行全球门户网站网站建设技能
  • 提供企业网站建设价格10元一年的虚拟主机
  • 塔城建设局网站电子商务网站建设方案目录
  • 网站容易被百度收录个人建购物网站怎么备案