14 LlamaIndex中的成本分析:优化LLM应用的经济效益

LlamaIndex中的成本分析:优化LLM应用的经济效益

概念

每次调用LLM都会产生一定的费用——例如,OpenAI的gpt-3.5-turbo每1000个标记(tokens)的费用是$0.002。构建索引和查询的成本取决于:

  • 使用的LLM类型
  • 使用的数据结构类型
  • 构建时使用的参数
  • 查询时使用的参数

在参考文档中,构建和查询每个索引的成本是一个待办事项(TODO)。在此期间,我们提供以下信息:

  • 索引成本结构的高层次概述
  • 你可以在LlamaIndex中直接使用的标记预测器

成本结构概述

无需LLM调用的索引

以下索引在构建过程中完全不需要LLM调用(0成本):

  • SummaryIndex
  • SimpleKeywordTableIndex - 使用正则表达式关键词提取器从每个文档中提取关键词
  • RAKEKeywordTableIndex - 使用RAKE关键词提取器从每个文档中提取关键词

需要LLM调用的索引

以下索引在构建过程中确实需要LLM调用:

  • TreeIndex - 使用LLM对文本进行层次化总结以构建树
  • KeywordTableIndex - 使用LLM从每个文档中提取关键词

查询时间

在查询时间,总是会有>=1次LLM调用,以便合成最终答案。一些索引在索引构建和查询之间存在成本权衡。例如,SummaryIndex是免费构建的,但在总结索引上运行查询(没有过滤或嵌入查找),将调用LLM {math}N次。

以下是关于每个索引的一些注释:

  • SummaryIndex:默认需要{math}N次LLM调用,其中N是节点数。
  • TreeIndex:默认需要{math}\log (N)次LLM调用,其中N是叶节点数。
  • 设置child_branch_factor=2将比默认的child_branch_factor=1(多项式 vs 对数)更昂贵,因为我们每个父节点遍历2个子节点而不是1个。
  • KeywordTableIndex:默认需要LLM调用来提取查询关键词。
  • 可以使用index.as_retriever(retriever_mode=“simple”)或index.as_retriever(retriever_mode=“rake”)在查询文本上使用正则表达式/RAKE关键词提取器。
  • VectorStoreIndex:默认情况下,每个查询需要一次LLM调用。如果你增加similarity_top_k或chunk_size,或更改response_mode,那么这个数字将增加。

使用模式

LlamaIndex提供了标记预测器来预测LLM和嵌入调用的标记使用情况。这允许你在1)索引构建和2)索引查询之前估计你的成本,而无需进行任何LLM调用。

标记计数使用TokenCountingHandler回调进行。有关详细信息,请参见示例笔记本。

使用MockLLM

要预测LLM调用的标记使用情况,请按如下所示导入并实例化MockLLM。max_tokens参数用作“最坏情况”预测,其中每个LLM响应将包含确切数量的标记。如果未指定max_tokens,则它将简单地预测回提示。

from llama_index.core.llms import MockLLM
from llama_index.core import Settings

# 全局使用mock llm
Settings.llm = MockLLM(max_tokens=256)

然后,你可以在索引构建和查询期间使用此预测器。

使用MockEmbedding

你也可以使用MockEmbedding预测嵌入调用的标记使用情况。

from llama_index.core import MockEmbedding
from llama_index.core import Settings

# 全局使用mock embedding
Settings.embed_model = MockEmbedding(embed_dim=1536)

使用模式

阅读完整的使用模式以获取更多详细信息!

通过LlamaIndex,我们不仅提供了一个强大的工具集,还构建了一个充满活力的社区,致力于推动LLMs在各种应用中的潜力。无论你是初学者还是经验丰富的开发者,LlamaIndex都为你提供了探索和实现上下文增强LLM应用的途径。加入我们,一起解锁LLMs的无限可能!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

需要重新演唱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值