LightRAG测试BUG

错误一:

LightRAG无法回答错误:

复制代码
INFO:lightrag:kw_prompt result:
 {{
  "high_level_keywords": ["xxx", "xxx"],
  "low_level_keywords": ["xxx", "xxx", "xxx"]
}}
JSON parsing error: Expecting property name enclosed in double quotes: line 1 column 2 (char 1) {{
  "high_level_keywords": ["xxx", "xxx"],
  "low_level_keywords": ["xxx", "xxx", "xxx"]
}}
Sorry, I'm not able to provide an answer to that question.

是因为LLM响应的格式错误:

复制代码
{{
  "high_level_keywords": ["xxx", "xxx"],
  "low_level_keywords": ["xxx", "xxx", ]
}}

正确格式:

复制代码
{
  "high_level_keywords": ["xxx", "xxx"],
  "low_level_keywords": ["xxx", "xxx"]
}

解决方法:修改\lightrag\operate.py 477行代码。

python 复制代码
result = await use_model_func(kw_prompt, keyword_extraction=True)
logger.info("kw_prompt result:")
print("original result:", result)
result = result.replace('{{', '{').replace('}}', '}')
print("rewrite result", result)

错误二:

新环境测试LightRAG时突然出现错误:KeyError: 'Could not automatically map gpt-4o-mini to a tokeniser. Please use `tiktok.get_encoding` to explicitly get the tokeniser you expect.'

解决方法:搜索发现可能跟tiktoken版本问题有关,发现新环境中的tiktoken库版本是0.3.0,而旧环境是0.7.0,重新安装后即可正常运行。
pip install tiktoken==0.7.0

生成的知识图谱中带有很多英文节点:

将\lightrag\prompt.py中PROMPTS["DEFAULT_LANGUAGE"] 的值修改成 "Chinese"。

错误三:

使用API插入文本出错

官方测试curl命令(错误):curl -X POST "http://127.0.0.1:8020/insert_file" -H "Content-Type: application/json" -d '{"file_path": "path/to/your/file.txt"}'

返回错误:{"detail":[{"type":"missing","loc":["body","file"],"msg":"Field required","input":null}]}

正确curl命令:curl -X POST "http://127.0.0.1:8020/insert_file" -H "Content-Type: multipart/form-data" -F "file=@path/to/your/file.txt"

返回成功:{"status":"success","data":null,"message":"File content from test.txt inserted successfully"}

相关推荐
CZIDC3 分钟前
华为昇腾服务器上查看固件、驱动和CANN版本的常用方法
linux·运维·服务器
拓端研究室TRL23 分钟前
Python贝叶斯回归、强化学习分析医疗健康数据拟合截断删失数据与参数估计3实例
开发语言·人工智能·python·数据挖掘·回归
wolf犭良1 小时前
27、Python 数据库操作入门(SQLite)从基础到实战精讲
数据库·python·sqlite
良许Linux1 小时前
C++在嵌入式中表现如何?
linux
sa100271 小时前
基于Python的网络爬虫技术研究
开发语言·爬虫·python
林政硕(Cohen0415)1 小时前
Linux驱动开发进阶(七)- DRM驱动程序设计
linux·驱动开发·drm
良许Linux1 小时前
能详细地讲讲stm32该怎么学吗?
linux
画扇落汗1 小时前
Python 几种将数据插入到数据库的方法(单行插入、批量插入,SQL Server、MySQL,insert into)
数据库·python·sql·mysql
闭关苦炼内功2 小时前
linux 使用 usermod 授权 普通用户 属组权限
linux·运维