只是尝试遵循基本的 langchain 教程:https://python.langchain.com/v0.2/docs/tutorials/local_rag/
超级简单的代码:
from langchain_ollama import ChatOllama
import logging
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s.%(msecs)03d [%(levelname)s]: %(message)s',
datefmt='%H:%M:%S'
)
logging.info("### Starting up")
llm = ChatOllama(
model="llama3.1",
)
response_message = llm.invoke(
"What are you?"
)
print(response_message.content)
无论我尝试什么,我总是会收到此错误:
Exception has occurred: ResponseError
invalid format: expected "json" or a JSON schema
File "C:\XXXX\local_rag\main.py", line 16, in <module>
response_message = llm.invoke(
^^^^^^^^^^^
ollama._types.ResponseError: invalid format: expected "json" or a JSON schema
尝试了一些不同的方法,包括来自 https://python.langchain.com/docs/integrations/chat/ollama/ 的消息[]、PromptTemplate、流式传输等,但总是遇到相同的错误。
通过其余 API 没有问题,即
curl http://localhost:11434/api/chat -d '{
"model": "llama3.1",
"messages": [
{ "role": "user", "content": "why is the sky blue?" }
]
}'
如有任何帮助,我们将不胜感激。真的希望我只是在这里做了一些愚蠢的事情。
升级 Ollama 后我也看到了同样的情况。我刚刚在这里打开了一个问题https://github.com/langchain-ai/langchain/issues/28753。现在,如果您降级 ollama 版本,它应该可以工作。