preset-io/promptimize

Promptimize is a prompt engineering evaluation and testing toolkit.

解決する課題

Promptimizeは、大規模言語モデル(LLM)の予測不可能性に対し、プロンプトエンジニアリングへのテスト駆動開発(TDD)アプローチを導入することで対処します。開発者は手動での試行錯誤から脱却し、プログラムによる厳密なフレームワークを使用して、大規模にプロンプトを評価・改善できるようになります。

仕組み

このツールキットは「プロンプトケース」システムを使用しており、開発者は特定の入力とそれに関連する評価関数をコードとして定義します。これらの関数は、応答を0から1のスケールでスコアリングします。Promptimizeはこれらのケースを「スイート」に整理し、異なるモデル、温度、設定で実行できます。パフォーマンスの追跡、リグレッションの特定、プロンプトのバリエーション間の比較を行うためのレポートを生成します。

対象ユーザー

ソフトウェア製品のプロダクション環境で使用するために、プロンプトが十分に信頼性が高く、決定論的であることを保証する必要があるプロダクトビルダーやAIエンジニア向けに設計されています。

ハイライト

  • Configuration as Code: プロンプトケースと評価はPythonで定義されるため、テストケースの動的な生成が可能です。
  • API効率: 変更されたプロンプトケースのみを再評価することで、コストを最小限に抑えます。
  • 加重評価: プロンプトケースに重みやカテゴリを割り当て、レポート作成時に重要なテストを優先できます。
  • 拡張可能なフック: 生成されたSQLコードを実行して結果を検証するなど、複雑な検証のための pre_run および post_run フックを提供します。
  • LangChain統合: 内部でLangChainと連携しますが、Pythonベースのプロンプト生成ロジックであれば何でも互換性があります。

関連

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