NPC-Worldwide/npcpy

The python library for research and development in NLP, multimodal LLMs, Agents, ML, Knowledge Graphs, and more.

解決する課題

npcpy は、マルチモーダルAIアプリケーション、エージェントAI、ナレッジグラフの開発を簡素化するために設計されたライブラリです。さまざまなローカルおよびクラウドLLMプロバイダーと対話するための統一インターフェースを提供し、コンテキストエンジニアリングとマルチエージェントオーケストレーションの複雑さを軽減します。また、NPC Context-Agent-Toolデータレイヤーを通じて、プロンプトベースのコンプライアンスとソフトウェア強制コンプライアンスの間のギャップにも対処します。

仕組み

このライブラリは、NPC(ノンプレイヤーキャラクター)クラスを使用して、特定の指示を持つペルソナを定義します。幅広いプロバイダー(Ollama、llama.cpp、Gemini など)をサポートし、専門のエージェントタイプを提供します:

  • Agent & ToolAgent:デフォルトのツール(シェル、Python、ウェブ検索など)またはカスタムPython関数をツールとして使用できるエージェント。
  • CodingAgent:LLMが生成したコードブロックを自動的に実行するエージェント。
  • NPCArray:エージェントが互いの応答を批評し洗練できる、並列推論とマルチエージェントディベートを実行するためのフレームワーク。
  • ナレッジグラフ:テキストから事実と概念を抽出するシステム。「睡眠/夢」ライフサイクルにより、統合と推測的な接続生成を行います。
  • Team:設定ファイル(.npc、.jinx、team.ctx)を使用して役割と共有コンテキストを定義し、複数のNPCをオーケストレーションするためのシステム。

対象読者

柔軟なモデルプロバイダー切り替えと構造化メモリシステムを必要とする複雑なAIエージェント、マルチエージェントシステム、マルチモーダルアプリケーションを構築する開発者と研究者。

ハイライト

  • マルチプロバイダーサポート:OllamaやLM Studioなどのローカルプロバイダー、GeminiやOpenAIなどのクラウドプロバイダーに対応。
  • マルチエージェントオーケストレーション:Team クラスによる並列推論、反復的改善、構造化されたチーム委譲をサポート。
  • マルチモーダル機能:画像、音声、ビデオ生成の統合サポート。
  • 構造化出力:自動解析された応答のためのJSONおよびPydanticモデルの組み込みサポート。
  • ナレッジグラフメモリ:段階的に進化し、知識を刈り込み拡張するためのスリープ/ドリームプロセスを使用する独自のメモリシステム。
  • 実行可能な設定:YAMLベースのファイルでエージェントとスキル(ジンクス)を定義でき、シェルから直接実行できます。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト