当前位置:首页AI视频🗂️ 骆驼指数 🦙

🗂️ 骆驼指数 🦙

Llamalndex是LLM应用程序的数据框架

PyPI - 下载
GitHub 贡献者
不和
询问 AI

LlamaIndex (GPT Index) 是 LLM 应用程序的数据框架。使用 LlamaIndex 进行构建通常涉及使用 LlamaIndex 核心和一组选定的集成(或插件)。有两种方法可以开始使用 LlamaIndex 进行构建 蟒:

  1. 启动器:(https://pypi.org/project/llama-index/)。一个入门 Python 包,包括核心 LlamaIndex 以及一系列集成。llama-index
  2. 定制:(https://pypi.org/project/llama-index-core/)。安装核心 LlamaIndex 并添加您选择的 LlamaIndex 集成包(临时注册表) 这是您的应用程序所必需的。有超过 300 个 LlamaIndex 集成 与 Core 无缝协作的软件包,允许您使用自己喜欢的软件包进行构建 LLM、嵌入和向量存储提供程序。llama-index-core

LlamaIndex Python 库被命名为 import 语句 include 表示正在使用核心包。相比之下,那些 语句不表示正在使用集成包。corecore

# typical pattern
from llama_index.core.xxx import ClassABC  # core submodule xxx
from llama_index.xxx.yyy import (
    SubclassABC,
)  # integration yyy for submodule xxx

# concrete example
from llama_index.core.llms import LLM
from llama_index.llms.openai import OpenAI

重要链接

LlamaIndex.TS(打字稿/Javascript):https://github.com/run-llama/LlamaIndexTS

文档:https://docs.llamaindex.ai/en/stable/

推特:https://twitter.com/llama_index

Discord:https://discord.gg/dGcwcsnxhU

生态系统

🚀 概述

注意:本自述文件的更新频率不如文档。请查看上面的文档以获取最新更新!

上下文

  • LLM 是用于知识生成和推理的非凡技术。它们对大量公开数据进行了预训练。
  • 我们如何用自己的私有数据最好地增强 LLM?

我们需要一个全面的工具包来帮助对 LLM 执行这种数据增强。

建议的解决方案

这就是 LlamaIndex 的用武之地。LlamaIndex 是一个“数据框架”,可帮助您构建 LLM 应用程序。它提供了以下工具:

  • 提供数据连接器,用于引入现有数据源和数据格式(API、PDF、文档、SQL 等)。
  • 提供构建数据(索引、图形)的方法,以便这些数据可以轻松地与 LLM 一起使用。
  • 为您的数据提供高级检索/查询界面:输入任何 LLM 输入提示,返回检索到的上下文和知识增强输出。
  • 允许与您的外部应用程序框架轻松集成(例如与 LangChain、Flask、Docker、ChatGPT 等任何内容)。

LlamaIndex 为初学者和高级用户提供工具。我们的高级 API 允许初学者使用 LlamaIndex 来摄取和查询他们的数据 5 行代码。我们的较低级别的 API 允许高级用户自定义和扩展任何模块(数据连接器、索引、检索器、查询引擎、重新排名模块), 以满足他们的需求。

💡 贡献

有兴趣做出贡献吗?对 LlamaIndex 核心的贡献以及贡献 建立在核心之上的集成既被接受,也受到强烈鼓励!有关更多详细信息,请参阅我们的贡献指南

📄 文档

完整的文档可以在这里找到:https://docs.llamaindex.ai/en/latest/

请查看最新的教程、操作指南、参考资料和其他资源!

💻 用法示例

# custom selection of integrations to work with core
pip install llama-index-core
pip install llama-index-llms-openai
pip install llama-index-llms-replicate
pip install llama-index-embeddings-huggingface

示例位于文件夹中。索引位于文件夹中(请参阅下面的索引列表)。docs/examplesindices

要使用 OpenAI 构建简单的向量存储索引,请执行以下操作:

import os

os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_API_KEY"

from llama_index.core import VectorStoreIndex, SimpleDirectoryReader

documents = SimpleDirectoryReader("YOUR_DATA_DIRECTORY").load_data()
index = VectorStoreIndex.from_documents(documents)

要使用非 OpenAI LLM(例如托管在 Replicate 上的 Llama 2)构建简单的向量存储索引,您可以在其中轻松创建免费试用的 API 令牌:

import os

os.environ["REPLICATE_API_TOKEN"] = "YOUR_REPLICATE_API_TOKEN"

from llama_index.core import Settings, VectorStoreIndex, SimpleDirectoryReader
from llama_index.embeddings.huggingface import HuggingFaceEmbedding
from llama_index.llms.replicate import Replicate
from transformers import AutoTokenizer

# set the LLM
llama2_7b_chat = "meta/llama-2-7b-chat:8e6975e5ed6174911a6ff3d60540dfd4844201974602551e10e9e87ab143d81e"
Settings.llm = Replicate(
    model=llama2_7b_chat,
    temperature=0.01,
    additional_kwargs={"top_p": 1, "max_new_tokens": 300},
)

# set tokenizer to match LLM
Settings.tokenizer = AutoTokenizer.from_pretrained(
    "NousResearch/Llama-2-7b-chat-hf"
)

# set the embed model
Settings.embed_model = HuggingFaceEmbedding(
    model_name="BAAI/bge-small-en-v1.5"
)

documents = SimpleDirectoryReader("YOUR_DATA_DIRECTORY").load_data()
index = VectorStoreIndex.from_documents(
    documents,
)

要查询:

query_engine = index.as_query_engine()
query_engine.query("YOUR_QUESTION")

默认情况下,数据存储在内存中。 要保留到磁盘(在):./storage

index.storage_context.persist()

要从磁盘重新加载:

from llama_index.core import StorageContext, load_index_from_storage

# rebuild storage context
storage_context = StorageContext.from_defaults(persist_dir="./storage")
# load index
index = load_index_from_storage(storage_context)

🔧 依赖

我们使用 poetry 作为所有 Python 包的包管理器。因此, 可以通过引用每个 Python 包文件夹中的文件来找到每个 Python 包的依赖项。pyproject.toml

cd <desired-package-folder>
pip install poetry
poetry install --with dev

📖 引文

如果您在论文中使用 LlamaIndex,请引用:

@software{Liu_LlamaIndex_2022,
author = {Liu, Jerry},
doi = {10.5281/zenodo.1234},
month = {11},
title = {{LlamaIndex}},
url = {https://github.com/jerryjliu/llama_index},
year = {2022}
}
温馨提示:

文章标题:🗂️ 骆驼指数 🦙

文章链接:https://yuntunft.cn/48890.html

更新时间:2024年06月30日

给TA打赏
共{{data.count}}人
人已打赏
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索