我今天第一次尝试了这个开源(MIT 许可、JavaScript 和 Python)本地主机 UI 来访问 LLM。做得非常好。
我用uvx运行它,如下所示:
uvx --python 3.11 open-webui serve
第一次启动时,它安装了一堆依赖项,然后下载了 903MB 到~/.cache/huggingface/hub/models--sentence-transformers--all-MiniLM-L6-v2
– all-MiniLM-L6-v2的副本嵌入模型,大概是因为它的RAG 特性。
然后它向我展示了一个可用的 Llama 3.2:3b 聊天界面,这让我感到惊讶,因为我没有发现它下载该模型。事实证明,这是因为我的笔记本电脑上已经运行了Ollama (已经安装了多个型号,包括 Llama 3.2:3b),并且 Open WebUI 自动检测到 Ollama 并让我可以访问可用型号的列表。
我找到了一个“知识”部分并添加了所有 Datasette 文档(通过从文档中放入.rst
文件) – 现在我可以在聊天中键入#
来搜索文件,将其添加到上下文中,然后提出问题直接关于它。
我选择了spatialite.rst.txt
文件,提示“如何将 SpatiaLite 与 Datasette 一起使用”并得到以下结果:
老实说,这是一个非常可靠的答案,特别是考虑到 Ollama 的 Llama 3.2 3B 模型只有 1.9GB 文件!令人印象深刻的是,该模型能够很好地处理基本的问答和针对提供给它的文本的摘要 – 它不知何故具有 128,000 个令牌上下文大小。
Open WebUI 还有很多其他技巧:它可以直接与 OpenAI 等 API 模型对话,可以选择与 Web 搜索和自定义工具集成,并将每次交互记录到 SQLite 数据库。它还附带大量文档。
标签: ollama ,生成 AI , llama , ai , rag , llms , uv , sqlite , python , edge-llms
原文: https://simonwillison.net/2024/Dec/27/open-webui/#atom-everything