CamiViolet/qqTwo
GitHub: CamiViolet/qqTwo
一个轻量级 LLM 上下文注入工具,通过人工维护的知识库为代码审查和文档问答提供高质量、实时的提示上下文,无需复杂的 RAG 基础设施。
Stars: 0 | Forks: 0
# qqOne
qqOne 利用 LLM 的能力来改进一些常见的活动,例如代码创建、文档创建和审查,以及回答与知识库相关的问题。
其特点是在知识库的创建和维护过程中需要人工干预。这是一个关键点,因为它可以保持知识库的整洁并专注于相关主题,这对于 LLM 提供的回答质量至关重要。
## 动态上下文
为了允许 LLM 在不重新训练模型的情况下回答与您的私有上下文相关的问题,您需要向其提供额外的信息(上下文注入)。从技术上讲,这是通过使用您自己的数据扩展 prompt 来完成的。
对此的常见解决方案是 RAG 技术(检索增强生成),它允许处理大量数据,从而可以扩展到企业级。另一方面,它需要复杂的工具链来管理其所需的多个层级(数据摄取、分块、索引、向量数据库创建、检索)。
qqOne 的方法有所不同,因为它假设用户通过保持数据的整洁和专注来显式维护输入数据(知识库)。
这带来了几个优势:
- 知识库是实时查询的。这意味着任何信息只要添加到知识库中就立即可用。
- 知识库的信息密度更高,因为它是经过人工筛选的。这意味着 LLM 可以提供更准确、更相关的回答。
- 出于同样的原因,我们检索到过时信息的风险较低。
- 检索到不匹配信息的风险也较低。例如,相同的组件可能具有变体,但这在仅下载 Confluence 页面时是不可见的。
# 知识库 'kb0'
知识库是工具 qqOne 用来为 LLM 创建上下文文件的文档集合。
知识库使用 kb 约定命名,其中 是标识特定知识库的数字。
知识库 kb0 的特点是处理以下主题:
- MotionWise Classic:TTTech 的产品。
- MotionWise Communication:TTTech 的产品。
知识库仅由纯文本文件或 Markdown 文件组成。
图表直接嵌入在 Markdown 文档中,并使用人类可读的语言,例如 Mermaid 或 PlantUML。这使得作者和生成式 AI 之间的工作流程更加顺畅。例如,LLM 可以轻松地修改图表。
## 其他组件
### dynamic_context.py
给定一个知识库和一个问题,该脚本创建上下文文件。
### keywords.py
该脚本从知识库中提取最常用的单词和 ngram。
### qqone_bot.py
提供对 LLM 在线服务访问的 Telegram 机器人。
### docx_to_txt.py
将 docx 文件转换为纯文本文件的工具。用于导入 Google Note 文件。
### get_patterns.py
从问题中计算搜索模式。
## 更多细节
* qqOne 未与 LLM 集成。qqOne 不使用 LLM 的 API,而是生成一个文本文件,然后在 GitHub Copilot chat 中用作上下文。
* qqOne 仅接受文本文件作为输入。从其他格式(Polarion、PDF、图像、Confluence 页面、Jira issues)导入必须手动完成,即使工具支持这些格式。在某种意义上,检索部分是缺失的。
* 用户必须仅使用 TTTech 的官方 AI 提供商,目前是 Copilot 和 GitHub Copilot 许可证。严禁使用其他提供商。
* 能够在 TTTech 的 GitHub Copilot 许可证提供的不同模型之间切换。结果可能会有显著差异。
* 模型不在本地运行。
* 开发成本极低,我个人已经使用它数月(2025 年中期),发现它非常有用。
* 知识库是精选和手动控制的。仅包含高质量、相关的内容。无自动爬取。
* 知识库的选择标准严格。文件是手动选择的。不使用自动爬取。
* 我可以创建高度特定的上下文(例如,特定的审查活动或 Jira 功能)并在上下文之间即时切换。标准工具或许也能做到这一点,但我没成功过。
* 对上下文进行极致的微调。例如,不仅仅是“Polarion 中的审查流程”,而是“Polarion 中当前的审查流程是如何工作的?”以及“如何改进 Polarion 中的审查流程?”。
* 数据库不是定期自动创建的。qqOne 允许持续完善数据库(持续添加、删除、修改文件)。一方面,这需要为每项活动增加少量开销;另一方面,数据库始终关于当前主题保持最新(零延迟)。
* 请注意,LLM 在处理信息密度高的文档时效果最好。重要的决策总是包含基本原理、假设和考虑因素。还要加上关于每个决策优缺点的考虑。
标签:AI辅助开发, DLL 劫持, LLM, RESTful API, Ruby, Unmanaged PE, 上下文注入, 人工干预, 代码生成, 动态上下文, 大语言模型, 实时查询, 手动管理, 提示词优化, 提示词工程, 文档审查, 无RAG, 智能问答, 渗透测试工具, 知识库, 知识管理, 私有知识库, 策略决策点, 轻量级工具, 逆向工具, 防御加固