NPC-Worldwide/npcpy

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

何を解決するか

npcpyは、マルチモーダル言語モデル、エージェントAI、およびナレッジグラフ(知識グラフ)のための統一されたインターフェースを提供することで、複雑なAIアプリケーションの開発を簡素化するために設計されたライブラリです。ローカルとクラウドの異なるLLMプロバイダー間の切り替えによる摩擦を取り除き、AIペルソナ、マルチエージェントのコラボレーション、および長期記憶を管理するための構造化された方法を提供します。

仕組み

このライブラリは、ユーザーとさまざまなLLMプロバイダー(Ollama、Llama.cpp、Gemini、OpenAIなど)の間のデータレイヤーとして機能します。「Context-Agent-Tool」アーキテクチャを使用することで、プロンプトだけに頼るのではなく、ソフトウェアロジックを通じてアプリケーションのコンプライアンスを確保します。

主なコンポーネントは以下の通りです:

  • NPCs and Agents: 特定の指示を持つペルソナのための高レベルな抽象化。CodingAgentのような特化型エージェントはコードを自動実行でき、ToolAgentはカスタムPython関数で拡張可能です。
  • NPCArray: 複数のモデルにわたって並列推論を実行し、マルチエージェントのディベートや反復的な洗練チェーンを管理するためのフレームワーク。
  • Knowledge Graphs: 「sleep」(統合/枝刈り)および「dream」(推測的な接続生成)プロセスを含む、漸進的な進化ライフサイクルをサポートするメモリシステム。
  • Team Orchestration: 設定ファイル(.npc.jinx.ctx)を介してマルチエージェントチームを定義するためのシステムで、スタンドアロンのスクリプトとして実行可能です。

対象ユーザー

エージェントAIシステム、マルチモーダルアプリケーション、または構造化されたマルチエージェントの相互作用と永続的で進化する知識ベースを必要とするシミュレーションを作成している研究者や開発者向けに構築されています。

ハイライト

  • Provider Agnostic: 単一のAPIを通じて、ローカル(Ollama、LM Studioなど)およびクラウドプロバイダー(Gemini、OrcaRouterなど)をサポート。
  • Multi-Agent Debate: 異なるAIペルソナ間での並列推論と合意形成のための組み込みツール。
  • Automated Coding: CodingAgentはタスクを自律的に解決するためにスクリプトを記述し、実行できます。
  • Lifecycle-based Memory: データの洗練のために、生物学に触発されたsleepおよびdreamサイクルを備えたナレッジグラフを実装。
  • Multimodal Support: 画像、音声、およびビデオ生成のための統合された機能。
  • Structured Output: 信頼性の高いデータ抽出のためのJSONおよびPydanticモデルのネイティブサポート。

関連

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