anything-llm/README.zh-CN.md
timothycarambat 79ea15e074 center lang
2024-05-08 09:42:49 -07:00

223 lines
13 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<a name="readme-top"></a>
<p align="center">
<a href="https://useanything.com"><img src="https://github.com/Mintplex-Labs/anything-llm/blob/master/images/wordmark.png?raw=true" alt="AnythingLLM logo"></a>
</p>
<p align="center">
<b>AnythingLLM</b> 您一直在寻找的全方位AI应用程序。<br />
与您的文档聊天使用AI代理高度可配置多用户无需繁琐的设置。
</p>
<p align="center">
<a href="https://discord.gg/6UyHPeGZAC" target="_blank">
<img src="https://img.shields.io/badge/chat-mintplex_labs-blue.svg?style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAH1UExURQAAAP////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////r6+ubn5+7u7/3+/v39/enq6urq6/v7+97f39rb26eoqT1BQ0pOT4+Rkuzs7cnKykZKS0NHSHl8fdzd3ejo6UxPUUBDRdzc3RwgIh8jJSAkJm5xcvHx8aanqB4iJFBTVezt7V5hYlJVVuLj43p9fiImKCMnKZKUlaaoqSElJ21wcfT09O3u7uvr6zE0Nr6/wCUpK5qcnf7+/nh7fEdKTHx+f0tPUOTl5aipqiouMGtubz5CRDQ4OsTGxufn515hY7a3uH1/gXBydIOFhlVYWvX29qaoqCQoKs7Pz/Pz87/AwUtOUNfY2dHR0mhrbOvr7E5RUy8zNXR2d/f39+Xl5UZJSx0hIzQ3Odra2/z8/GlsbaGjpERHSezs7L/BwScrLTQ4Odna2zM3Obm7u3x/gKSmp9jZ2T1AQu/v71pdXkVISr2+vygsLiInKTg7PaOlpisvMcXGxzk8PldaXPLy8u7u7rm6u7S1tsDBwvj4+MPExbe4ueXm5s/Q0Kyf7ewAAAAodFJOUwAABClsrNjx/QM2l9/7lhmI6jTB/kA1GgKJN+nea6vy/MLZQYeVKK3rVA5tAAAAAWJLR0QB/wIt3gAAAAd0SU1FB+cKBAAmMZBHjXIAAAISSURBVDjLY2CAAkYmZhZWNnYODnY2VhZmJkYGVMDIycXNw6sBBbw8fFycyEoYGfkFBDVQgKAAPyMjQl5IWEQDDYgIC8FUMDKKsmlgAWyiEBWMjGJY5YEqxMAqGMWFNXAAYXGgAkYJSQ2cQFKCkYFRShq3AmkpRgYJbghbU0tbB0Tr6ukbgGhDI10gySfBwCwDUWBsYmpmDqQtLK2sbTQ0bO3sHYA8GWYGWWj4WTs6Obu4ami4OTm7exhqeHp5+4DCVJZBDmqdr7ufn3+ArkZgkJ+fU3CIRmgYWFiOARYGvo5OQUHhEUAFTkF+kVHRsLBgkIeyYmLjwoOc4hMSk5JTnINS06DC8gwcEEZ6RqZGlpOfc3ZObl5+gZ+TR2ERWFyBQQFMF5eklmqUpQb5+ReU61ZUOvkFVVXXQBSAraitq29o1GiKcfLzc29u0mjxBzq0tQ0kww5xZHtHUGeXhkZhdxBYgZ4d0LI6c4gjwd7siQQraOp1AivQ6CuAKZCDBBRQQQNQgUb/BGf3cqCCiZOcnCe3QQIKHNRTpk6bDgpZjRkzg3pBQTBrdtCcuZCgluAD0vPmL1gIdvSixUuWgqNs2YJ+DUhkEYxuggkGmOQUcckrioPTJCOXEnZ5JS5YslbGnuyVERlDDFvGEUPOWvwqaH6RVkHKeuDMK6SKnHlVhTgx8jeTmqy6Eij7K6nLqiGyPwChsa1MUrnq1wAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMy0xMC0wNFQwMDozODo0OSswMDowMB9V0a8AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjMtMTAtMDRUMDA6Mzg6NDkrMDA6MDBuCGkTAAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDIzLTEwLTA0VDAwOjM4OjQ5KzAwOjAwOR1IzAAAAABJRU5ErkJggg==" alt="Discord">
</a> |
<a href="https://github.com/Mintplex-Labs/anything-llm/blob/master/LICENSE" target="_blank">
<img src="https://img.shields.io/static/v1?label=license&message=MIT&color=white" alt="许可证">
</a> |
<a href="https://docs.useanything.com" target="_blank">
文档
</a> |
<a href="https://my.mintplexlabs.com/aio-checkout?product=anythingllm" target="_blank">
托管实例
</a>
</p>
<p align="center">
<a href='/README.md'>English</a> · <b>简体中文</b>
</p>
<p align="center">
👉 适用于桌面Mac、Windows和Linux的AnythingLLM<a href="https://useanything.com/download" target="_blank">立即下载</a>
</p>
这是一个全栈应用程序可以将任何文档、资源如网址链接、音频、视频或内容片段转换为上下文以便任何大语言模型LLM在聊天期间作为参考使用。此应用程序允许您选择使用哪个LLM或向量数据库同时支持多用户管理并设置不同权限。
![聊天](https://github.com/Mintplex-Labs/anything-llm/assets/16845892/cfc5f47c-bd91-4067-986c-f3f49621a859)
<details>
<summary><kbd>观看演示视频!</kbd></summary>
[![观看视频](/images/youtube.png)](https://youtu.be/f95rGD9trL0)
</details>
### 产品概览
AnythingLLM是一个全栈应用程序您可以使用现成的商业大语言模型或流行的开源大语言模型再结合向量数据库解决方案构建一个私有ChatGPT不再受制于人您可以本地运行也可以远程托管并能够与您提供的任何文档智能聊天。
AnythingLLM将您的文档划分为称为`workspaces` (工作区)的对象。工作区的功能类似于线程,同时增加了文档的容器化,。工作区可以共享文档,但工作区之间的内容不会互相干扰或污染,因此您可以保持每个工作区的上下文清晰。
AnythingLLM的一些酷炫特性
- **多用户实例支持和权限管理**
- 工作区内的智能体Agent浏览网页、运行代码等
- [为您的网站定制的可嵌入聊天窗口](./embed/README.md)
- 支持多种文档类型PDF、TXT、DOCX等
- 通过简单的用户界面管理向量数据库中的文档
- 两种对话模式:`聊天`和`查询`。聊天模式保留先前的对话记录。查询模式则是是针对您的文档做简单问答
- 聊天中会提供所引用的相应文档内容
- 100%云部署就绪。
- “部署你自己的LLM模型”。
- 管理超大文档时高效、低耗。只需要一次就可以嵌入Embedding)一个庞大的文档或文字记录。比其他文档聊天机器人解决方案节省90%的成本。
- 全套的开发人员API用于自定义集成
### 支持的LLM、嵌入模型、转录模型和向量数据库
**支持的LLM**
- [任何与llama.cpp兼容的开源模型](/server/storage/models/README.md#text-generation-llm-selection)
- [OpenAI](https://openai.com)
- [OpenAI (通用)](https://openai.com)
- [Azure OpenAI](https://azure.microsoft.com/en-us/products/ai-services/openai-service)
- [Anthropic](https://www.anthropic.com/)
- [Google Gemini Pro](https://ai.google.dev/)
- [Hugging Face (聊天模型)](https://huggingface.co/)
- [Ollama (聊天模型)](https://ollama.ai/)
- [LM Studio (所有模型)](https://lmstudio.ai)
- [LocalAi (所有模型)](https://localai.io/)
- [Together AI (聊天模型)](https://www.together.ai/)
- [Perplexity (聊天模型)](https://www.perplexity.ai/)
- [OpenRouter (聊天模型)](https://openrouter.ai/)
- [Mistral](https://mistral.ai/)
- [Groq](https://groq.com/)
- [Cohere](https://cohere.com/)
- [KoboldCPP](https://github.com/LostRuins/koboldcpp)
**支持的嵌入模型:**
- [AnythingLLM原生嵌入器](/server/storage/models/README.md)(默认)
- [OpenAI](https://openai.com)
- [Azure OpenAI](https://azure.microsoft.com/en-us/products/ai-services/openai-service)
- [LocalAi (全部)](https://localai.io/)
- [Ollama (全部)](https://ollama.ai/)
- [LM Studio (全部)](https://lmstudio.ai)
- [Cohere](https://cohere.com/)
**支持的转录模型:**
- [AnythingLLM内置](https://github.com/Mintplex-Labs/anything-llm/tree/master/server/storage/models#audiovideo-transcription) (默认)
- [OpenAI](https://openai.com/)
**支持的向量数据库:**
- [LanceDB](https://github.com/lancedb/lancedb) (默认)
- [Astra DB](https://www.datastax.com/products/datastax-astra)
- [Pinecone](https://pinecone.io)
- [Chroma](https://trychroma.com)
- [Weaviate](https://weaviate.io)
- [QDrant](https://qdrant.tech)
- [Milvus](https://milvus.io)
- [Zilliz](https://zilliz.com)
### 技术概览
这个单库由三个主要部分组成:
- `frontend`: 一个viteJS + React前端您可以运行它来轻松创建和管理LLM可以使用的所有内容。
- `server`: 一个NodeJS express服务器用于处理所有交互并进行所有向量数据库管理和LLM交互。
- `docker`: Docker指令和构建过程 + 从源代码构建的信息。
- `collector`: NodeJS express服务器用于从UI处理和解析文档。
## 🛳 自托管
Mintplex Labs和社区维护了许多部署方法、脚本和模板您可以使用它们在本地运行AnythingLLM。请参阅下面的表格了解如何在您喜欢的环境上部署或自动部署。
| Docker | AWS | GCP | Digital Ocean | Render.com |
|----------------------------------------|----:|-----|---------------|------------|
| [![在Docker上部署][docker-btn]][docker-deploy] | [![在AWS上部署][aws-btn]][aws-deploy] | [![在GCP上部署][gcp-btn]][gcp-deploy] | [![在DigitalOcean上部署][do-btn]][do-deploy] | [![在Render.com上部署][render-btn]][render-deploy] |
| Railway |
| --------------------------------------------------- |
| [![在Railway上部署][railway-btn]][railway-deploy] |
[其他方案不使用Docker配置AnythingLLM实例 →](./BARE_METAL.md)
## 如何设置开发环境
- `yarn setup` 填充每个应用程序部分所需的`.env`文件(从仓库的根目录)。
- 在开始下一步之前,先填写这些信息`server/.env.development`,不然代码无法正常执行。
- `yarn dev:server` 在本地启动服务器(从仓库的根目录)。
- `yarn dev:frontend` 在本地启动前端(从仓库的根目录)。
- `yarn dev:collector` 然后运行文档收集器(从仓库的根目录)。
[了解文档](./server/storage/documents/DOCUMENTS.md)
[了解向量缓存](./server/storage/vector-cache/VECTOR_CACHE.md)
## 如何贡献
- 创建issue
- 创建PR分支名称格式为`<issue number>-<short name>`
- 然后合并
## 远程信息收集与隐私保护
由Mintplex Labs Inc开发的AnythingLLM包含一个收集匿名使用信息的Telemetry功能。
<details>
<summary><kbd>有关AnythingLLM的远程信息收集与隐私保护更多信息</kbd></summary>
### 为什么收集信息?
我们使用这些信息来帮助我们理解AnythingLLM的使用情况帮助我们确定新功能和错误修复的优先级并帮助我们提高AnythingLLM的性能和稳定性。
### 怎样关闭
通过在服务器或docker的.env设置中将`DISABLE_TELEMETRY`设置为“true”来选择退出Telemetry远程信息收集功能。您也可以进入AnythingLLM应用>>>侧边栏最下方 >>> `隐私和数据` Privacy&Data)>>>找到最下方的Anonymous Telemetry Enabled点击绿色按钮让它变灰色从而禁用信息收集功能。
### 你们跟踪收集哪些信息?
我们只会跟踪有助于我们做出产品和路线图决策的使用细节,具体包括:
- 您的安装方式Docker或桌面版
- 文档被添加或移除的时间。但不包括文档内的具体内容。我们只关注添加或移除文档这个行为。这些信息能让我们了解到文档功能的使用情况。
- 使用中的向量数据库类型。让我们知道哪个向量数据库最受欢迎,并在后续更新中优先考虑相应的数据库。
- 使用中的LLM类型。让我们知道谁才是最受欢迎的LLM模型并在后续更新中优先考虑相应模型。
- 信息被`发送`出去。这是最常规的“事件/行为/event”并让我们了解到所有安装了这个项目的每日活动情况。同样只收集`发送`这个行为的信息,我们不会收集关于聊天本身的性质或内容的任何信息。
您可以通过查找所有调用`Telemetry.sendTelemetry`的位置来验证这些声明。此外如果启用这些事件也会被写入输出日志因此您也可以看到发送了哪些具体数据。不收集IP或其他识别信息。Telemetry远程信息收集的方案来自[PostHog](https://posthog.com/) - 一个开源的远程信息收集服务。
[在源代码中查看所有信息收集活动](https://github.com/search?q=repo%3AMintplex-Labs%2Fanything-llm%20.sendTelemetry\(&type=code)
</details>
## 🔗 更多产品
- **[VectorAdmin][vector-admin]**一个用于管理向量数据库的全方位GUI和工具套件。
- **[OpenAI Assistant Swarm][assistant-swarm]**一个智能体Agent就可以管理您所有的OpenAI助手。
<div align="right">
[![][back-to-top]](#readme-top)
</div>
---
版权所有 © 2024 [Mintplex Labs][profile-link]。<br />
本项目采用[MIT](./LICENSE)许可证。
<!-- LINK GROUP -->
[back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-222628?style=flat-square
[profile-link]: https://github.com/mintplex-labs
[vector-admin]: https://github.com/mintplex-labs/vector-admin
[assistant-swarm]: https://github.com/Mintplex-Labs/openai-assistant-swarm
[docker-btn]: ./images/deployBtns/docker.png
[docker-deploy]: ./docker/HOW_TO_USE_DOCKER.md
[aws-btn]: ./images/deployBtns/aws.png
[aws-deploy]: ./cloud-deployments/aws/cloudformation/DEPLOY.md
[gcp-btn]: https://deploy.cloud.run/button.svg
[gcp-deploy]: ./cloud-deployments/gcp/deployment/DEPLOY.md
[do-btn]: https://www.deploytodo.com/do-btn-blue.svg
[do-deploy]: ./cloud-deployments/digitalocean/terraform/DEPLOY.md
[render-btn]: https://render.com/images/deploy-to-render-button.svg
[render-deploy]: https://render.com/deploy?repo=https://github.com/Mintplex-Labs/anything-llm&branch=render
[render-btn]: https://render.com/images/deploy-to-render-button.svg
[render-deploy]: https://render.com/deploy?repo=https://github.com/Mintplex-Labs/anything-llm&branch=render
[railway-btn]: https://railway.app/button.svg
[railway-deploy]: https://railway.app/template/HNSCS1?referralCode=WFgJkn