编程笔记

lifelong learning & practice makes perfect

大语言模型构建本地知识库(RAG)

概念

LLM/大语言模型

大语言模型(英文:Large Language Model,缩写LLM)是一种人工智能模型,旨在理解和生成人类语言。它们在大量的文本数据上进行训练,可以执行广泛的任务,包括文本总结、翻译、情感分析等等。LLM的特点是规模庞大,包含数十亿的参数

LangChain

LangChain是一个强大的框架,旨在帮助开发人员使用语言模型构建端到端的应用程序。它提供了一套工具、组件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互,将多个组件链接在一起,并集成额外的资源,例如 API 和数据库

Components and Chains

  • Component 是模块化的构建块,可以组合起来创建强大的应用程序。
  • Chain 是组合在一起以完成特定任务的一系列 Components(或其他 Chain)。

例如,一个 Chain 可能包括一个 Prompt 模板、一个语言模型和一个输出解析器,它们一起工作以处理用户输入、生成响应并处理输出。

Prompt Templates and Values

  • Prompt Template 负责创建 Prompt Value,这是最终传递给语言模型的内容
  • Prompt Values 是具有方法的类,这些方法可以转换为每个模型类型期望的确切输入类型(如文本或聊天消息)

Output Parsers

负责将语言模型响应构建为更有用的格式

LlamaIndex

LlamaIndex使用 LangChain 的 LLM 模块并允许自定义底层 LLM。LlamaIndex 是一个强大的工具,它提供了一个中央接口来将 LLM 与外部数据连接起来,并允许你根据你提供的数据创建一个聊天机器人。使用 LlamaIndex,您无需成为 NLP 或机器学习专家。您只需要提供您希望聊天机器人使用的数据,LlamaIndex 会处理剩下的事情

Hugging Face

Emdedding

方案

阿里云 DashVector x LLM

GPT4All + LangChain

FASTGpt+One-api+阿里云DashScope

开源项目FastGpt构建本地知识库,通过one-api调用非chatgpt的大语言模型(为非openai的LLM提供类似chatgpt接口),阿里的
DashScope有通义千问,Llmma2,通义万相,姜子牙通用大模型等LLM接口可供使用

工具

参考

欢迎关注我的其它发布渠道