❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- 功能:支持查询跟踪、检索结果记录、LLM 交互记录和性能监控。
- 技术:基于事件驱动的日志记录框架,支持配置管理和性能分析。
- 应用:适用于搜索引擎优化、智能问答系统、内容推荐系统等场景。
正文(附运行示例)
RAG Logger 是什么
RAG Logger 是一款专为检索增强生成(RAG)应用设计的开源日志工具。它作为 LangSmith 的轻量级替代品,专注于满足 RAG 应用的日志记录需求。RAG Logger 提供查询跟踪、检索结果记录、LLM 交互记录和性能监控等功能,支持 JSON 格式的日志存储,实现每日日志组织和自动文件管理。
RAG Logger 完全用 Python 编写,帮助开发者更有效地监控和分析 RAG 应用的性能。无论是搜索引擎优化、智能问答系统,还是内容推荐系统,RAG Logger 都能提供强大的日志记录和分析功能。
RAG Logger 的主要功能
- 查询跟踪:记录用户查询,便于后续分析和监控。
- 检索结果日志记录:记录从检索系统中检索到的文档,包括文档ID、内容和相似度得分。
- LLM 交互记录:记录与大型语言模型(LLM)的交互,包括输入和输出。
- 性能监控:监控和记录 RAG 管道中每一步的执行时间,帮助识别性能瓶颈。
- 结构化存储:以 JSON 格式存储日志,便于机器读取和分析。
- 每日日志组织:按日期组织日志文件,方便管理和检索。
RAG Logger 的技术原理
- 日志记录框架:作为日志记录框架,集成到 RAG 应用中,捕获和记录关键操作的数据。
- 事件驱动:基于事件驱动的设计,每当 RAG 应用中的特定事件发生时,RAG Logger 会记录相关信息。
- 配置管理:支持用户配置日志记录的行为,例如日志级别、输出格式和存储位置。
- 性能分析:记录每一步的执行时间,RAG Logger 能用于分析 RAG 应用的性能。
如何运行 RAG Logger
1. 初始化日志记录器
from logger import RAGLogger
# 初始化日志记录器
logger = RAGLogger(log_dir="logs")
2. 记录查询
# 记录一个查询
logger.log_query("What is machine learning?")
3. 跟踪检索步骤
# 开始检索步骤
logger.start_step("retrieval")
# 记录检索结果
logger.log_retrieval(
source="text",
total_docs=100,
retrieved_docs=[{
"id": 1, "content": "..."}]
)
# 结束检索步骤
logger.end_step("retrieval")
4. 记录 LLM 交互
# 记录 LLM 交互
logger.log_llm(
llm_input="User query and context",
llm_output="Generated response"
)
5. 保存日志
# 保存日志
logger.save()
资源
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦