提示:如果您尚未完成,请安装 LlamaIndex 并完成起步教程。遇到不熟悉的术语时,请参考高层次概念部分。

在这个章节中,我们将从您为起步示例编写的代码开始,展示您可能希望针对不同应用场景对其进行的常见定制方法:

python
 
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_query_engine() response = query_engine.query("What did the author do growing up?") print(response)

“我想将文档拆分为更小的片段”

python
 
# 全局设置 from llama_index.core import Settings Settings.chunk_size = 512 # 局部设置 from llama_index.core.node_parser import SentenceSplitter index = VectorStoreIndex.from_documents( documents, transformations=[SentenceSplitter(chunk_size=512)] )

“我想使用不同的向量存储”

首先,您可以安装您想使用的向量存储。例如,要使用 Chroma 作为向量存储,您可以使用 pip 进行安装:

bash
 
pip install llama-index-vector-stores-chroma

要了解所有可用集成,请访问 LlamaHub。

然后,在代码中使用它:

python
 
import chromadb from llama_index.vector_stores.chroma import ChromaVectorStore from llama_index.core import StorageContext chroma_client = chromadb.PersistentClient() chroma_collection = chroma_client.create_collection("quickstart") vector_store = ChromaVectorStore(chroma_collection=chroma_collection) storage_context = StorageContext.from_defaults(vector_store=vector_store) # 存储上下文定义了文档、嵌入和索引的存储后端。您可以了解更多关于存储及其定制方法。 from llama_index.core import VectorStoreIndex, SimpleDirectoryReader documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents( documents, storage_context=storage_context ) query_engine = index.as_query_engine() response = query_engine.query("What did the author do growing up?") print(response)

“查询时我想获取更多上下文”

python
 
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_query_engine(similarity_top_k=5) response = query_engine.query("What did the author do growing up?") print(response) # as_query_engine 在索引之上构建了一个默认的检索器和查询引擎。您可以通过传入关键字参数来配置检索器和查询引擎。这里我们配置检索器返回最相似的前5个文档(而非默认的2个)。您可以了解更多关于检索器和查询引擎的信息。

“我想使用不同的 LLM”

python
 
# 全局设置 from llama_index.core import Settings from llama_index.llms.ollama import Ollama Settings.llm = Ollama(model="mistral", request_timeout=60.0) # 局部设置 index.as_query_engine(llm=Ollama(model="mistral", request_timeout=60.0)) # 您可以了解更多关于定制 LLM 的信息。

“我想使用不同的响应模式”

python
 
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_query_engine(response_mode="tree_summarize") response = query_engine.query("What did the author do growing up?") print(response) # 您可以了解更多关于查询引擎和响应模式的信息。

“我想以流式方式返回响应”

python
 
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_query_engine(streaming=True) response = query_engine.query("What did the author do growing up?") response.print_response_stream() # 您可以了解更多关于流式响应的信息。

“我想要一个聊天机器人而非问答系统”

python
 
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_chat_engine() response = query_engine.chat("What did the author do growing up?") print(response) response = query_engine.chat("Oh interesting, tell me more.") print(response) # 了解更多关于聊天引擎的信息。

后续步骤

  • 全面了解几乎所有的可配置项:从“理解 LlamaIndex”开始深入学习。
  • 深入了解特定模块:查阅组件指南。

AI 新世代

ToolChatAi

Ref:https://docs.llamaindex.ai/en/stable/getting_started/customization/

Link:https://www.cnblogs.com/farwish/p/18133698

LlamaIndex 常见问题解答(FAQ)的更多相关文章

  1. dubbo常见问题解答FAQ

    常见问题解答 1. 如果服务注册不上怎么办? 2. 出现RpcException: No provider available for remote service异常怎么办? 3. 出现调用超时co ...

  2. SSL/TLS 高强度加密: 常见问题解答

    关于这个模块 mod_ssl 简史 mod_ssl会受到Wassenaar Arrangement(瓦森纳协议)的影响吗? mod_ssl 简史 mod_ssl v1 最早在1998年4月由Ralf ...

  3. 我个人有关 Azure 网络 SLA、带宽、延迟、性能、SLB、DNS、DMZ、VNET、IPv6 等的 Azure 常见问题解答

    Igor Pagliai(微软)   2014 年 9月 28日上午 5:57  年 11 月 3 年欧洲 TechEd 大会新宣布的内容). 重要提示:这篇文章中我提供的信息具有时间敏感性,因为这些 ...

  4. 学习OpenCV双目测距原理及常见问题解答

    学习OpenCV双目测距原理及常见问题解答 转自博客:https://blog.csdn.net/angle_cal/article/details/50800775 一. 整体思路和问题转化.  图 ...

  5. # ConfigureAwait常见问题解答

    原文: https://devblogs.microsoft.com/dotnet/configureawait-faq/ .NET 在七多年前在语言和类库添加了 async/await .在那个时候 ...

  6. MySQL同步常见问题解答(自己的小心得)

    前几天刚刚注册了博客园,我想写一些技巧性的教程,今天给大家分享一个MySQL同步常见问题解答. Q:如果主服务器正在运行并且不想停止主服务器,怎样配置一个从服务器? A:有多种方法.如果你在某时间点做 ...

  7. Delphi XE5 常见问题解答

    Delphi XE5 常见问题解答 有关于新即时试用的问题吗?请看看 RAD Studio 即时试用常见问答. 常见问题 什么是 Delphi? Embarcadero? Delphi? XE5 是易 ...

  8. [!!!!!]Inno Setup教程-常见问题解答

    [转]Inno Setup教程-常见问题解答 功能 * 翻译 Inno Setup 文字  * 它支持 MBCS (多字节字符集) 吗?  * 将来会支持 Windows Installer 吗?   ...

  9. 英特尔® 实感™ SDK 前置摄像头 (F200) 常见问题解答

    原文地址 https://software.intel.com/zh-cn/articles/intel-realsense-sdk-faq-for-front-facing-camera-f200? ...

  10. 关于CopyU!的常见问题解答

    拷优(CopyU!)常见问题解答 本常见问题解答列举了一些常见的疑问及其解释,如果您对CopyU!有任何问题,请您首先查看本解答! 本解答将会保持随时更新! 一.使用篇:     1.问:我的杀毒软件 ...

随机推荐

  1. 深度学习论文翻译解析(二十一):High-Performance Large-Scale Image Recognition Without Normalization

    论文标题:High-Performance Large-Scale Image Recognition Without Normalization 论文作者:Andrew Brock Soham De ...

  2. 三维模型3DTile格式轻量化纹理压缩技术方法浅析

    三维模型3DTile格式轻量化纹理压缩技术方法浅析 三维模型的纹理数据通常占据了模型数据的大部分,因此纹理压缩对于3DTile格式轻量化压缩来说至关重要.下面将详细分析几种主要的纹理压缩技术方法: D ...

  3. springboot 在 yaml 文件中读取 pom 文件的 properties

    如果没有其他配置,只能读取 yaml 文件所在模块下 和 父级模块的 pom 的 properties,以下是配置: <properties> <revision>1.0< ...

  4. 记录--CSS 如何实现羽化效果?

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 最近碰到这样一个问题,在一张封面上直接显示书名,可能会存在书名看不太清楚的情况(容易受到背景干扰),如下 为了解决这个问题,设计师提了一个 ...

  5. PLC:自动纠正数据集噪声,来洗洗数据集吧 | ICLR 2021 Spotlight

     论文提出了更通用的特征相关噪声类别PMD,基于此类噪声构建了数据校准策略PLC来帮助模型更好地收敛,在生成数据集和真实数据集上的实验证明了其算法的有效性.论文提出的方案理论证明完备,应用起来十分简单 ...

  6. KingbaseES V8R6运维案例之---wal日志解析DML操作

    案例说明: 通过sys_waldump解析DML操作,获取DML操作的日志条目具体内容. 适用版本: KingbaseES V8R3/R6 一.DML事务操作对应的wal日志文件 # 查看当前onli ...

  7. UE4蓝图对Actor的引用

    通过关卡蓝图调用 在关卡中放置一个Actor,在关卡蓝图中右键 create a reference to actor,即可 注意使用该方法创建时,需要现在关卡中选择上该类Actor 当Actor生成 ...

  8. 基于Java NIO 写的一个简单版 Netty 服务端

    A Simple Netty Based On JAVA NIO 基于Java NIO 写的一个简单版 Netty 服务端 前置知识 NIO NIO 一般指 同步非阻塞 IO,同样用于**描述程序访问 ...

  9. 手写数字图片识别——DL 入门案例

    Deep Learning Demo of Primary 下面介绍一个入门案例,如何使用TensorFlow和Keras构建一个CNN模型进行手写数字识别,以及如何使用该模型对自己的图像进行预测.尽 ...

  10. webpack 4 快速搭建

    安装 npm install --save-dev webpack@4.30.0 webpack-cli@3.3.2 更新 package.json 脚本 "scripts": { ...