安装¶
如果您在 Colab 上打开此 Notebook,可能需要安装 LlamaIndex 🦙。
In [ ]:
Copied!
%pip install llama-index-callbacks-aim
%pip install llama-index-callbacks-aim
In [ ]:
Copied!
!pip install llama-index
!pip install llama-index
In [ ]:
Copied!
from llama_index.core.callbacks import CallbackManager
from llama_index.callbacks.aim import AimCallback
from llama_index.core import SummaryIndex
from llama_index.core import SimpleDirectoryReader
from llama_index.core.callbacks import CallbackManager
from llama_index.callbacks.aim import AimCallback
from llama_index.core import SummaryIndex
from llama_index.core import SimpleDirectoryReader
让我们使用 SimpleDirectoryReader
从 'examples/data/paul_graham' 目录读取文档。
下载数据¶
In [ ]:
Copied!
!mkdir -p 'data/paul_graham/'
!wget 'https://raw.githubusercontent.com/run-llama/llama_index/main/docs/docs/examples/data/paul_graham/paul_graham_essay.txt' -O 'data/paul_graham/paul_graham_essay.txt'
!mkdir -p 'data/paul_graham/'
!wget 'https://raw.githubusercontent.com/run-llama/llama_index/main/docs/docs/examples/data/paul_graham/paul_graham_essay.txt' -O 'data/paul_graham/paul_graham_essay.txt'
In [ ]:
Copied!
docs = SimpleDirectoryReader("./data/paul_graham").load_data()
docs = SimpleDirectoryReader("./data/paul_graham").load_data()
现在让我们初始化一个 AimCallback 实例,并将其添加到回调管理器列表中。
In [ ]:
Copied!
aim_callback = AimCallback(repo="./")
callback_manager = CallbackManager([aim_callback])
aim_callback = AimCallback(repo="./")
callback_manager = CallbackManager([aim_callback])
在此代码片段中,我们初始化了一个回调管理器。
接着,我们通过传入文档阅读器和回调函数,创建了 SummaryIndex
类的实例。之后我们创建了一个查询引擎,用于在索引上运行查询并获取相关结果。
In [ ]:
Copied!
index = SummaryIndex.from_documents(docs, callback_manager=callback_manager)
query_engine = index.as_query_engine()
index = SummaryIndex.from_documents(docs, callback_manager=callback_manager)
query_engine = index.as_query_engine()
最后让我们基于提供的文档向语言模型提出一个问题
In [ ]:
Copied!
response = query_engine.query("What did the author do growing up?")
response = query_engine.query("What did the author do growing up?")
回调管理器会将 CBEventType.LLM
类型的事件记录为 Aim.Text 对象,我们可以在文本浏览器中查看语言模型接收的提示词及其输出结果。首先执行 aim up
命令,然后通过提供的 URL 进行导航。