标签: langchain

使用 LangChain 的 UnstructedURLLoader 加载数据因“TP_NUM_C_BUFS 太小:50”而停止

我正在尝试复制 LangChain 文档中提供的代码(URL - LangChain 0.0.167),以便能够将 HTML 文件从 URL 列表加载到文档格式中,然后可以由复杂的自然语言处理模型进行处理以执行下游任务。但是,我遇到了一个问题,代码url_data = url_loader.load()挂起半个多小时而没有加载任何 HTML 文件。

我还遇到了堆栈跟踪,并且无法解释该错误的错误消息TP_NUM_C_BUFS too small: 50。此错误之前已在 LangChain 存储库中报告为已解决的问题(链接)。该问题的作者报告说,执行之前TP_NUM_C_BUFS too small: 50在 Windows 命令提示符下导致错误的脚本解决了该问题。但是,在 Windows 命令提示符下执行我的脚本并没有解决问题。

有人能够找出这个问题的根源并提供解决方案吗?

微量元素

from langchain.document_loaders import UnstructuredURLLoader
import session_info

session_info.show()

urls = [
    "https://www.understandingwar.org/backgrounder/russian-offensive-campaign-assessment-february-8-2023",
    "https://www.understandingwar.org/backgrounder/russian-offensive-campaign-assessment-february-9-2023",
]

print(urls)

loader = UnstructuredURLLoader(urls=urls)

print(loader)

data = loader.load()

print(data)
Run Code Online (Sandbox Code Playgroud)

MWE执行结果

D:\path>C:/Python310/python.exe d:/path/src/langchain-url-mwe.py
-----
langchain           0.0.157
session_info        1.0.0
-----
Python 3.10.8 (tags/v3.10.8:aaaf517, Oct 11 2022, 16:50:30) [MSC v.1933 64 …
Run Code Online (Sandbox Code Playgroud)

artificial-intelligence python-3.x langchain py-langchain

2
推荐指数
1
解决办法
5215
查看次数

使用开放式人工智能导入和 langchain 后,gpt 聊天机器人无法工作

你好,我正在尝试使用 openai 的 api 构建一个聊天机器人。它的基本功能是读取 pdf、txtfile 等并根据它进行回答。我正在关注https://beebom.com/how-train-ai-chatbot-custom-knowledge-base-chatgpt-api/上的教程

我使用了以下代码并安装了必要的依赖项:

from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper, ServiceContext
from langchain.chat_models import ChatOpenAI
import gradio as gr
import sys
import os

os.environ["OPENAI_API_KEY"] = 'yourapikey'

def construct_index(directory_path):
    max_input_size = 4096
    num_outputs = 512
    max_chunk_overlap = 20
    chunk_size_limit = 600

    prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit)

    llm_predictor = LLMPredictor(llm=ChatOpenAI(temperature=0.7, model_name="gpt-3.5-turbo", max_tokens=num_outputs))

    documents = SimpleDirectoryReader(directory_path).load_data()

    index = GPTSimpleVectorIndex(documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper)

    index.save_to_disk('index.json')

    return index

def chatbot(input_text):
    index = GPTSimpleVectorIndex.load_from_disk('index.json')
    response = index.query(input_text, response_mode="compact")
    return …
Run Code Online (Sandbox Code Playgroud)

python window openai-api gpt-3 langchain

1
推荐指数
1
解决办法
7104
查看次数

OpenAI 微调 API:为什么我要使用 LlamaIndex 或 LangChain 而不是微调模型?

我刚刚开始使用法学硕士,特别是 OpenAI 和其他 OSS 模型。有很多关于使用 LlamaIndex 创建所有文档的存储然后查询它们的指南。我用一些示例文档进行了尝试,但发现每个查询很快就会变得非常昂贵。我想我使用了 50 页的 PDF 文档,摘要查询每次查询花费了大约 1.5 美元。我看到有很多令牌被发送,所以我假设它为每个查询发送整个文档。考虑到有人可能想要使用数以千万计的记录,我看不出像 LlamaIndex 这样的东西如何能够以经济高效的方式真正发挥作用。

另一方面,我看到 OpenAI 允许你训练 ChatGPT 模型。或者使用其他经过定制培训的法学硕士来查询您自己的数据不是更便宜、更有效吗?我为什么要设置 LlamaIndex?

language-model openai-api chatgpt-api llama-index langchain

1
推荐指数
1
解决办法
3140
查看次数

由于编码问题,无法使用 TextLoader 从 langchain.document_loaders 库读取文本数据文件

我是 Langchain 的新手,我遇到了一个问题。我的最终目标是读取文件的内容并创建数据的矢量存储,以便稍后查询。

from langchain.embeddings.openai import OpenAIEmbeddings
from langchain.text_splitter import CharacterTextSplitter
from langchain.vectorstores import FAISS
from langchain.document_loaders import TextLoader


loader = TextLoader("elon_musk.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
docs = text_splitter.split_documents(documents)
Run Code Online (Sandbox Code Playgroud)

我的数据文件似乎存在一些问题,因此它无法读取我的文件的内容。是否可以加载 utf-8 格式的文件?我的假设是使用 utf-8 编码我不应该遇到这个问题。

以下是我在代码中遇到的错误:

---------------------------------------------------------------------------
UnicodeDecodeError                        Traceback (most recent call last)
File ~\anaconda3\envs\langchain-test\lib\site-packages\langchain\document_loaders\text.py:41, in TextLoader.load(self)
     40     with open(self.file_path, encoding=self.encoding) as f:
---> 41         text = f.read()
     42 except UnicodeDecodeError as e:

File ~\anaconda3\envs\langchain-test\lib\encodings\cp1252.py:23, in IncrementalDecoder.decode(self, input, final)
     22 def decode(self, input, final=False):
---> 23     return codecs.charmap_decode(input,self.errors,decoding_table)[0] …
Run Code Online (Sandbox Code Playgroud)

file-format langchain py-langchain

1
推荐指数
1
解决办法
9701
查看次数

无法从“llama_index”导入名称“LangchainEmbedding”

我正在尝试构建一个简单的 RAG,但我陷入了这段代码:

from langchain.embeddings.huggingface import HuggingFaceEmbeddings
from llama_index import LangchainEmbedding, ServiceContext

embed_model = LangchainEmbedding(
  HuggingFaceEmbeddings(model_name="thenlper/gte-large")
)
service_context = ServiceContext.from_defaults(
    chunk_size=256,
    llm=llm,
    embed_model=embed_model
)
index = VectorStoreIndex.from_documents(documents, service_context=service_context)
Run Code Online (Sandbox Code Playgroud)

我在哪里得到 ImportError: Cannot import name 'LangchainEmbedding' from 'llama_index' 我该如何解决?这和我从事 Colab 工作有关吗?

python embedding google-colaboratory llama-index langchain

0
推荐指数
1
解决办法
6052
查看次数