赞
踩
本文翻译整理自:https://docs.llamaindex.ai/en/stable/module_guides/models/
您可以通过以下几种主要方式与 LlamaIndex 中的模型进行交互:
实验性的
在基于数据构建任何 LLM 应用程序时,选择合适的大型语言模型 (LLM) 是您需要考虑的首要步骤之一。
LLM 是 LlamaIndex 的核心组成部分。
它们可以用作 独立模块 或插入其他核心 LlamaIndex 模块(索引、检索器、查询引擎)。
它们总是在响应合成步骤中使用(例如检索后)。
根据所使用的索引类型,LLM 也可以在索引构建、插入和查询遍历期间使用。
LlamaIndex 提供了定义 LLM 模块的统一接口,无论是来自 OpenAI、Hugging Face 还是 LangChain,这样您就不必自己编写定义 LLM 接口的样板代码。
该接口由以下部分组成(更多详细信息如下):
以下代码片段展示了如何开始使用LLM 。
如果您还没有,请安装您的 LLM:
pip install llama-index-llms-openai
然后:
from llama_index.llms.openai import OpenAI
# non-streaming
resp = OpenAI().complete("Paul Graham is ")
print(resp)
默认情况下,LlamaIndex 使用全局token器进行所有token计数。
默认为cl100k
from tiktoken,它是与默认 LLM 匹配的token生成器gpt-3.5-turbo
。
如果您更改 LLM,您可能需要更新此分词器以确保准确的分词计数、分块和提示。
分词器的唯一要求是它是一个可调用函数,接受一个字符串并返回一个列表。
您可以像这样设置全局token生成器:
from llama_index.core import Settings
# tiktoken
import tiktoken
Settings.tokenizer = tiktoken.encoding_for_model("gpt-3.5-turbo").encode
# huggingface
from transformers import AutoTokenizer
Settings.tokenizer = AutoTokenizer.from_pretrained(
"HuggingFaceH4/zephyr-7b-beta"
)
虽然LLM 很强大,但并不是每个LLM 都很容易建立。
此外,即使设置正确,一些LLM 在执行需要严格遵循指令的任务时也遇到困难。
LlamaIndex 提供与几乎所有 LLM 的集成,但通常不清楚 LLM 是否可以很好地开箱即用,或者是否需要进一步定制。
下表尝试验证各种 LlamaIndex 功能对各种LLM 的初步体验。
这些笔记本电脑是衡量性能以及需要付出多少努力和调整才能使其正常运行的最佳尝试。
一般来说,OpenAI 或 Anthropic 等付费 API 被认为更可靠。
然而,本地开源模型由于其可定制性和透明度方法而越来越受欢迎。
**贡献:**欢迎任何人为文档贡献新的LLM 。
只需复制现有笔记本,设置并测试您的LLM ,然后用您的结果打开 PR。
如果您有办法改进现有笔记本的设置,欢迎贡献力量来改变这一点!
Legend
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。