NPC-Worldwide/npcpy
The python library for research and development in NLP, multimodal LLMs, Agents, ML, Knowledge Graphs, and more.
What it solves
npcpy 是一个旨在简化复杂 AI 应用开发的库,提供多模态语言模型、代理式 AI 与知识图谱的原语。它解决了管理多个 AI 人格、协调多代理团队,以及在单一框架内整合多样工具与提供商(本地与云端)的挑战。
How it works
此库使用「Context-Agent-Tool」数据层来管理 AI 行为与合规性。它提供多种专门的代理类型:
- NPC:具备主要指令的人格式代理。
- Agent:具备默认工具,如 Shell 访问、Python 执行和网页搜索。
- ToolAgent:可通过自定义 Python 函数作为工具进行扩展的代理。
- CodingAgent:自动执行 LLM 生成的代码块的代理。
- NPCArray:用于在多个代理之间并行推理的工具,支持多代理辩论和迭代细化。
- Team:管理 NPC 群组的编排层,可通过代码或配置文件(
.npc、.jinx、.ctx)定义。
它还包含一个知识图谱系统,具备「睡眠/梦境」生命周期,用于从文本中整合和生成推测性连接,并支持 Model Context Protocol (MCP) 服务器集成以访问外部工具。
Who it’s for
- 构建代理式工作流的 AI 研究者和开发者。
- 创建多代理仿真或协作 AI 团队的开发者。
- 需要统一接口以使用本地(Ollama、llama.cpp)和云端 LLM 提供商的工程师。
Highlights
- Multi-Agent Orchestration:通过
Team类支持并行辩论、共识构建和复杂委派。 - Multimodal Capabilities:集成图像、音频和视频生成支持。
- Flexible Tooling:内置 Shell 与 Python 执行工具,且支持自定义工具和 MCP 服务器。
- Knowledge Graph Memory:拥有独特的生命周期,用于在知识图谱中演化、修剪和「梦」的过程。
- Provider Agnostic:可与本地提供商(如 Ollama、LM Studio)以及云端 API 一起使用。