LLM 扩展开发工具
参考知乎: 大模型Agent智能体25款产品、商业案例随笔记(一) 、 基于大模型的AI搜索15款产品随笔记(二)
LLM 扩展开发工具:
1、开源且无需编码(No-Code)的 LLM 应用构建工具: https://flowiseai.com/ ,将永远免费供商业和个人使用。
代码库: https://github.com/FlowiseAI/Flowise 使用 Node、React 开发。
Flowise 是专门为 LangChain 打造的用户界面 (UI),利用了 React-Flow 技术。
2、专注于 RAG 应用程序构建的开源数据框架: https://www.llamaindex.ai/
开源代码库: https://github.com/run-llama/llama_index
文档库: https://docs.llamaindex.ai/en/stable/
3、LangChain-Chatchat (原 Langchain-ChatGLM): https://github.com/chatchat-space/Langchain-Chatchat
基于 Langchain 与 ChatGLM 等大语言模型的本地知识库问答应用实现
https://github.com/chatchat-space/Langchain-Chatchat/wiki/
4、 (创新AI企业) LinkAI - 一站式AI智能体平台 - 极简未来 (link-ai.tech)
开源代码: https://github.com/zhayujie/chatgpt-on-wechat 开源文档:docs.link-ai.tech/cow
5、 基于 LLM 大模型的开源 AI 知识库构建平台 : https://fastgpt.in
开源库: https://github.com/labring/FastGPT
6、百度 - AI Studio、 文心智能体平台 | 想象即现实 ( https://agents.baidu.com )
7、阿里modelspace: Modelscope-Agent是一个可定制的、可扩展的Agent代码框架。单Agent具有角色扮演、LLM调用、工具使用、规划、记忆等能力。
钉钉AI助理:
8、生成式 AI 应用创新引擎: dify.AI ,中文 https://dify.ai/zh, 开源的 LLM 应用开发平台
9、autochain (目前更新慢了): https://autochain.forethought.ai/examples/
https://github.com/Forethought-Technologies/AutoChain
LangChain-Chatchat (原 Langchain-ChatGLM): 基于 Langchain 与 ChatGLM 等大语言模型的本地知识库问答应用实现。
🤖️ 一种利用 langchain 思想实现的基于本地知识库的问答应用,目标期望建立一套对中文场景与开源模型支持友好、可离线运行的知识库问答解决方案。
💡 受 GanymedeNil 的项目 document.ai 和 AlexZhangji 创建的 ChatGLM-6B Pull Request 启发,建立了全流程可使用开源模型实现的本地知识库问答应用。本项目的最新版本中通过使用 FastChat 接入 Vicuna, Alpaca, LLaMA, Koala, RWKV 等模型,依托于 langchain 框架支持通过基于 FastAPI 提供的 API 调用服务,或使用基于 Streamlit 的 WebUI 进行操作。
✅ 依托于本项目支持的开源 LLM 与 Embedding 模型,本项目可实现全部使用开源模型离线私有部署。与此同时,本项目也支持 OpenAI GPT API 的调用,并将在后续持续扩充对各类模型及模型 API 的接入。
⛓️ 本项目实现原理如下图所示,过程包括加载文件 -> 读取文本 -> 文本分割 -> 文本向量化 -> 问句向量化 -> 在文本向量中匹配出与问句向量最相似的 top k
个 -> 匹配出的文本作为上下文和问题一起添加到 prompt
中 -> 提交给 LLM
生成回答。
大家可以前往Bilibili平台查看原理介绍视频:
📺 原理介绍视频
开发组也为大家绘制了一张实现原理图,效果如下:
从文档处理角度来看,实现流程如下:
- Langchain 应用
- 本地数据接入
- 接入非结构化文档
- .txt, .rtf, .epub, .srt
- .eml, .msg
- .html, .xml, .toml, .mhtml
- .json, .jsonl
- .md, .rst
- .docx, .doc, .pptx, .ppt, .odt
- .enex
- .jpg, .jpeg, .png, .bmp
- .py, .ipynb
- 结构化数据接入
- .csv, .tsv
- .xlsx, .xls, .xlsd
- 分词及召回
- 接入不同类型 TextSplitter
- 优化依据中文标点符号设计的 ChineseTextSplitter
- 接入非结构化文档
- 搜索引擎接入
- Bing 搜索
- DuckDuckGo 搜索
- Metaphor 搜索
- Agent 实现
- 基础React形式的Agent实现,包括调用计算器等
- Langchain 自带的Agent实现和调用
- 智能调用不同的数据库和联网知识
- 本地数据接入
- LLM 模型接入
- 支持通过调用 FastChat api 调用 llm
- 支持 ChatGLM API 等 LLM API 的接入
- 支持 Langchain 框架支持的LLM API 接入
- Embedding 模型接入
- 支持调用 HuggingFace 中各开源 Emebdding 模型
- 支持 OpenAI Embedding API 等 Embedding API 的接入
- 支持 智谱AI、百度千帆、千问、MiniMax 等在线 Embedding API 的接入
- 基于 FastAPI 的 API 方式调用
- Web UI
- 基于 Streamlit 的 Web UI