python-3.x - 使用 llama 索引为商业管道创建嵌入

标签 python-3.x openai-api chatgpt-api llama-index llm

我有下面的 python 3 代码。在代码中,我使用元中的 llama_index 从我自己的文本语料库创建索引对象。然后,我使用我的附加文本语料库索引将查询传递给该索引对象,以从 openai 的 chatgpt 获取响应。我必须从我的付费 openai 帐户中提供我的 openai api key 才能获取创建的索引或返回响应。我的假设是 llama_index 基本上将我的文本语料库切成 block 。然后 chatgpt 为切碎的语料库创建嵌入,以创建索引对象。然后,当我传入查询时,chatgpt 会为查询创建类似的嵌入,与我已经从语料库创建的索引进行内积,然后返回响应。

我听说 llama_index 仅供研究使用。所以我想知道我是否可以在这种情况下将它用作商业应用程序的一部分?因为我正在为我的 openai 帐户和 api key 付费,而且据我所知 llama_index 是我在环境中安装的一个库,它有助于切碎语料库并传递给法学硕士。有谁知道 llama_index 是否可以在这样的商业管道中使用?我对流程有什么遗漏吗?我最近一直达到速率限制,这让我感到惊讶,因为我没有用它做太多事情。所以我想知道它们是否来自 llama_index 而不是 openai。

代码:

def index_response(api_key,text_path,query):

    # api key you generate in your openai account

    import os

    # add your openai api key here
    os.environ['OPENAI_API_KEY'] = api_key

    # Load you data into 'Documents' a custom type by LlamaIndex
    from llama_index import SimpleDirectoryReader

    documents = SimpleDirectoryReader(text_path).load_data()

    from llama_index import GPTVectorStoreIndex

    index = GPTVectorStoreIndex.from_documents(documents)

    query_engine = index.as_query_engine()
    response = query_engine.query(query)

    return response.response

最佳答案

我使用 llama_index 作为 POC 之一。但您可以将 langchain 用于任何目的 ( https://docs.langchain.com/docs/ )。

这比 llama 成熟得多,并且与 llama 相比提供了多种选择。

关于python-3.x - 使用 llama 索引为商业管道创建嵌入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76442693/

相关文章:

javascript - OpenAI 转录 API 返回 400 错误请求

flutter - 如何将 "system"消息添加到我的提示中?

python flask : Variable inside {% %}

python - pytest 可以忽略导入依赖吗?我想对 Pi 代码进行单元测试

python - 如何在一行中以空格分隔输入列表中的元素?

python - 如何同时使用Python openai客户端与Azure和OpenAI?

python - 截断一个数字并获取删除的值。还是转换为 int?

python - 为什么 Zappa 部署缺少虚拟环境中存在的所有/大多数包?

openai-api - 如何在云端微调和部署ChatGPT?

javascript - 确定OpenAI聊天完成是否执行函数调用或生成消息