跳转到主要内容

可能最小的LLM API

项目描述

llama-small

MicroLlama

可能最小的LLM API。只需几分钟即可构建自己的内容问答界面。使用OpenAI嵌入gpt-3.5Faiss,通过Langchain

用法

  1. 将源文档合并成一个名为source.json的JSON文件。它应该看起来像这样
[
    {
        "source": "Reference to the source of your content. Typically a title.",
        "url": "URL for your source. This key is optional.",
        "content": "Your content as a single string. If there's a title or summary, put these first, separated by new lines."
    }, 
    ...
]

example.source.json的示例。

  1. 在虚拟环境中安装MicroLlama
pip install microllama
  1. 获取OpenAI API密钥并将其添加到环境中,例如export OPENAI_API_KEY=sk-etc。请注意,索引和查询需要OpenAI积分,这些积分并非免费

  2. 使用microllama运行您的服务器。如果不存在向量搜索索引,它将从您的source.json创建,并存储。

  3. /api/ask?your question处查询您的文档。

  4. Microllama包含一个可选的Web前端,该前端通过microllama make-front-end生成。该命令创建一个可编辑的index.html文件。它托管在/

配置

Microllama通过环境变量进行配置,以下为默认值

  • OPENAI_API_KEY: 必需
  • FAISS_INDEX_PATH: "faiss_index"
  • SOURCE_JSON: "source.json"
  • MAX_RELATED_DOCUMENTS: "5"
  • EXTRA_CONTEXT: "回答不超过三句话。如果答案未包含在上下文中,则说'抱歉,我的源中没有这个问题的答案。'"。
  • UVICORN_HOST: "0.0.0.0"
  • UVICORN_PORT: "8080"

部署您的API

使用 microllama make-dockerfile 创建一个 Dockerfile。然后

在 Fly.io 上

注册一个 Fly.io 账户并 安装 flyctl。然后

fly launch # answer no to Postgres, Redis and deploying now 
fly secrets set OPENAI_API_KEY=sk-etc 
fly deploy

在 Google Cloud Run 上

gcloud run deploy --source . --set-env-vars="OPENAI_API_KEY=sk-etc"

对于 Cloud Run 和其他无服务器平台,您应该在容器构建时生成 FAISS 索引,以减少启动时间。请参阅 Dockerfile 中的两条注释行。

您还可以使用 microllama deploy 生成这些命令。

基于

待办事项

  • 使用拆分来生成更有意义的片段,例如:text_splitter = SpacyTextSplitter(chunk_size=700, chunk_overlap=200, separator=" ")

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

microllama-0.4.10.tar.gz (17.1 kB 查看哈希值)

上传时间

构建分布

microllama-0.4.10-py2.py3-none-any.whl (15.6 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面