diff --git a/.vscode/settings.json b/.vscode/settings.json
index b0fccedf0..f850bbb00 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -17,6 +17,7 @@
"hljs",
"inferencing",
"Langchain",
+ "lmstudio",
"mbox",
"Milvus",
"Mintplex",
diff --git a/BARE_METAL.md b/BARE_METAL.md
index 17ad84f40..8d495d81b 100644
--- a/BARE_METAL.md
+++ b/BARE_METAL.md
@@ -30,6 +30,13 @@ Here you can find the scripts and known working process to run AnythingLLM outsi
STORAGE_DIR="/your/absolute/path/to/server/.env"
```
+5. Edit the `frontend/.env` file for the `VITE_BASE_API` to now be set to `/api`. This is documented in the .env for which one you should use.
+```
+# VITE_API_BASE='http://localhost:3001/api' # Use this URL when developing locally
+# VITE_API_BASE="https://$CODESPACE_NAME-3001.$GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN/api" # for Github Codespaces
+VITE_API_BASE='/api' # Use this URL deploying on non-localhost address OR in docker.
+```
+
## To start the application
AnythingLLM is comprised of three main sections. The `frontend`, `server`, and `collector`. When running in production you will be running `server` and `collector` on two different processes, with a build step for compilation of the frontend.
diff --git a/README.md b/README.md
index d5e4c3013..8e761a436 100644
--- a/README.md
+++ b/README.md
@@ -24,6 +24,10 @@
+
+ English · 简体中文
+
+
👉 AnythingLLM for desktop (Mac, Windows, & Linux)! Download Now
@@ -65,6 +69,7 @@ Some cool features of AnythingLLM
- [Any open-source llama.cpp compatible model](/server/storage/models/README.md#text-generation-llm-selection)
- [OpenAI](https://openai.com)
+- [OpenAI (Generic)](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/)
@@ -77,6 +82,9 @@ Some cool features of AnythingLLM
- [OpenRouter (chat models)](https://openrouter.ai/)
- [Mistral](https://mistral.ai/)
- [Groq](https://groq.com/)
+- [Cohere](https://cohere.com/)
+- [KoboldCPP](https://github.com/LostRuins/koboldcpp)
+- [Text Generation Web UI](https://github.com/oobabooga/text-generation-webui)
**Supported Embedding models:**
@@ -86,6 +94,7 @@ Some cool features of AnythingLLM
- [LocalAi (all)](https://localai.io/)
- [Ollama (all)](https://ollama.ai/)
- [LM Studio (all)](https://lmstudio.ai)
+- [Cohere](https://cohere.com/)
**Supported Transcription models:**
@@ -143,7 +152,6 @@ Mintplex Labs & the community maintain a number of deployment methods, scripts,
- create PR with branch name format of `-`
- yee haw let's merge
-
## Telemetry & Privacy
AnythingLLM by Mintplex Labs Inc contains a telemetry feature that collects anonymous usage information.
diff --git a/README.zh-CN.md b/README.zh-CN.md
new file mode 100644
index 000000000..2385a04cd
--- /dev/null
+++ b/README.zh-CN.md
@@ -0,0 +1,223 @@
+
+
+
+
+
+
+
+ AnythingLLM: 您一直在寻找的全方位AI应用程序。
+ 与您的文档聊天,使用AI代理,高度可配置,多用户,无需繁琐的设置。
+
+
+
+
+
+ |
+
+
+ |
+
+ 文档
+ |
+
+ 托管实例
+
+
+
+
+ English · 简体中文
+
+
+
+👉 适用于桌面(Mac、Windows和Linux)的AnythingLLM!立即下载
+
+
+这是一个全栈应用程序,可以将任何文档、资源(如网址链接、音频、视频)或内容片段转换为上下文,以便任何大语言模型(LLM)在聊天期间作为参考使用。此应用程序允许您选择使用哪个LLM或向量数据库,同时支持多用户管理并设置不同权限。
+
+![聊天](https://github.com/Mintplex-Labs/anything-llm/assets/16845892/cfc5f47c-bd91-4067-986c-f3f49621a859)
+
+
+观看演示视频!
+
+[![观看视频](/images/youtube.png)](https://youtu.be/f95rGD9trL0)
+
+
+
+### 产品概览
+
+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,分支名称格式为`-`
+- 然后合并
+
+## 远程信息收集与隐私保护
+
+由Mintplex Labs Inc开发的AnythingLLM包含一个收集匿名使用信息的Telemetry功能。
+
+
+有关AnythingLLM的远程信息收集与隐私保护更多信息
+
+
+
+
+### 为什么收集信息?
+
+我们使用这些信息来帮助我们理解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)
+
+
+
+## 🔗 更多产品
+
+- **[VectorAdmin][vector-admin]**:一个用于管理向量数据库的全方位GUI和工具套件。
+- **[OpenAI Assistant Swarm][assistant-swarm]**:一个智能体Agent就可以管理您所有的OpenAI助手。
+
+
+
+[![][back-to-top]](#readme-top)
+
+
+
+---
+
+版权所有 © 2024 [Mintplex Labs][profile-link]。
+本项目采用[MIT](./LICENSE)许可证。
+
+
+
+[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
\ No newline at end of file
diff --git a/docker/.env.example b/docker/.env.example
index e10ace026..5ea5ce609 100644
--- a/docker/.env.example
+++ b/docker/.env.example
@@ -71,6 +71,10 @@ GID='1000'
# KOBOLD_CPP_MODEL_PREF='koboldcpp/codellama-7b-instruct.Q4_K_S'
# KOBOLD_CPP_MODEL_TOKEN_LIMIT=4096
+# LLM_PROVIDER='textgenwebui'
+# TEXT_GEN_WEB_UI_BASE_PATH='http://127.0.0.1:5000/v1'
+# TEXT_GEN_WEB_UI_TOKEN_LIMIT=4096
+
# LLM_PROVIDER='generic-openai'
# GENERIC_OPEN_AI_BASE_PATH='http://proxy.url.openai.com/v1'
# GENERIC_OPEN_AI_MODEL_PREF='gpt-3.5-turbo'
diff --git a/embed/README.md b/embed/README.md
index 05aac501e..c439d7869 100644
--- a/embed/README.md
+++ b/embed/README.md
@@ -87,6 +87,12 @@ REQUIRED data attributes:
- `data-assistant-icon` - Set the icon of the chat assistant.
+- `data-window-height` - Set the chat window height. **must include CSS suffix:** `px`,`%`,`rem`
+
+- `data-window-width` - Set the chat window width. **must include CSS suffix:** `px`,`%`,`rem`
+
+- `data-text-size` - Set the text size of the chats in pixels.
+
**Behavior Overrides**
- `data-open-on-load` — Once loaded, open the chat as default. It can still be closed by the user.
diff --git a/embed/index.html b/embed/index.html
index 87c8b9051..b5113e172 100644
--- a/embed/index.html
+++ b/embed/index.html
@@ -1,5 +1,6 @@
+
This is an example testing page for embedded AnythingLLM.
-
+
+