Кто-нибудь может успешно запустить langchain gpt4all?
Следующий фрагмент кода взят из https://python.langchain.com/docs/modules/model_io/models/llms/integrations/gpt4all .
from langchain import PromptTemplate, LLMChain
from langchain.llms import GPT4All
from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler
template = """Question: {question}
Answer: Let's think step by step."""
prompt = PromptTemplate(template=template, input_variables=["question"])
local_path = (
"./models/ggml-gpt4all-l13b-snoozy.bin" # replace with your desired local file path
)
# Callbacks support token-wise streaming
callbacks = [StreamingStdOutCallbackHandler()]
# Verbose is required to pass to the callback manager
llm = GPT4All(model=local_path, callbacks=callbacks, verbose=True)
# If you want to use a custom model add the backend parameter
# Check https://docs.gpt4all.io/gpt4all_python.html for supported backends
llm = GPT4All(model=local_path, backend="gptj", callbacks=callbacks, verbose=True)
llm_chain = LLMChain(prompt=prompt, llm=llm)
question = "What NFL team won the Super Bowl in the year Justin Bieber was born?"
llm_chain.run(question)`
Вот сообщение об ошибке:
Found model file at ./models/ggml-gpt4all-l13b-snoozy.bin
Invalid model file
---------------------------------------------------------------------------
ValidationError Traceback (most recent call last)
Cell In[16], line 19
17 callbacks = [StreamingStdOutCallbackHandler()]
18 # Verbose is required to pass to the callback manager
---> 19 llm = GPT4All(model=local_path, callbacks=callbacks, verbose=True)
20 # If you want to use a custom model add the backend parameter
21 # Check https://docs.gpt4all.io/gpt4all_python.html for supported backends
22 llm = GPT4All(model=local_path, backend="gptj", callbacks=callbacks, verbose=True)
File ~/anaconda3/lib/python3.10/site-packages/pydantic/main.py:341, in pydantic.main.BaseModel.__init__()
ValidationError: 1 validation error for GPT4All
__root__
Unable to instantiate model (type=value_error)
2 ответа
Без дополнительной информации (например, версии, ОС и т. д.) трудно сказать, в чем здесь проблема.
Первое, что нужно проверить, является ли./models/ggml-gpt4all-l13b-snoozy.bin
действует. Для этого вам следует сравнить контрольную сумму локального файла с действительными, которые вы можете найти здесь: https://gpt4all.io/models/models.json.
Обратите внимание, что вашей модели нет в файле и она больше официально не поддерживается в текущей версии gpt4all (1.0.2), поэтому вы можете загрузить и использоватьGPT4All-13B-snoozy.ggmlv3.q4_0.bin
с их официального сайта . Если контрольная сумма неверна, удалите старый файл и загрузите заново.
Если проблема не устранена, попробуйте загрузить модель напрямую через gpt4all, чтобы определить, связана ли проблема с файлом / пакетом gpt4all или пакетом langchain.
from gpt4all import GPT4All
model = GPT4All("ggml-gpt4all-l13b-snoozy.bin", model_path="./models/")
Наконец, вы не должны вызывать одновременно строку 19 и строку 22. Как говорится в комментариях: если у вас есть предопределенная модель, используйте 19, если у вас есть пользовательская, используйте строку 22.
Сначала вам необходимо установить «ggml-gpt4all-l13b-snoozy.bin» на свой компьютер:
from gpt4all import GPT4All
GPT4All(model_name = "ggml-gpt4all-l13b-snoozy.bin")
тогда вы можете использовать langchain.llms для доступа к вашей модели. ВНИМАНИЕ: используйте gpt4all = 0.3.5.