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:シェルアクセス、Python 実行、ウェブ検索などのデフォルトツールを備えたエージェント。
  • ToolAgent:カスタム Python 関数をツールとして拡張できるエージェント。
  • CodingAgent:LLM が生成したコードブロックを自動的に実行するエージェント。
  • NPCArray:複数エージェント間で並列推論を実行し、マルチエージェントディベートや反復的リファインメントを可能にするユーティリティ。
  • Team:コードまたは設定ファイル(.npc.jinx.ctx)で定義できる NPC グループを管理するオーケストレーション層。

また、テキストからの統合と推測的接続生成を行う「スリープ/ドリーム」ライフサイクルを持つナレッジグラフシステムを含み、外部ツールアクセスのための Model Context Protocol (MCP) サーバー統合もサポートします。

Who it’s for

  • エージェント型ワークフローを構築する AI 研究者・開発者。
  • マルチエージェントシミュレーションや協働 AI チームを作成する開発者。
  • ローカル(Ollama、llama.cpp)およびクラウド LLM プロバイダーを統一インターフェースで利用したいエンジニア。

Highlights

  • Multi-Agent OrchestrationTeam クラスを通じて並列ディベート、コンセンサス構築、複雑な委任をサポート。
  • Multimodal Capabilities:画像、音声、動画生成の統合サポート。
  • Flexible Tooling:シェルと Python 実行の組み込みツールに加え、カスタムツールと MCP サーバーをサポート。
  • Knowledge Graph Memory:ナレッジグラフ内で進化、剪定、ドリームを行う独自のライフサイクル。
  • Provider Agnostic:Ollama や LM Studio などのローカルプロバイダーとクラウド API の両方で動作。