Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
giskard-oss — 🐢 LLMエージェント向けのオープンソース評価・テストライブラリ | Kitploit
ツール/GitHubGitHub/giskard-ai/giskard-oss
脆弱性スキャナーファジング機械学習レッドチーミングAIセキュリティ敵対的攻撃
GitHubgiskard-ai/giskard-oss

giskard-oss

🐢 LLMエージェント向けのオープンソース評価・テストライブラリ

リポジトリを見る
5.8k5223日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

giskardlogo giskardlogo

エージェント型システムのためのEvals、レッドチーミング、テスト生成

モジュール型、軽量、動的、Asyncファースト

GitHub release License Downloads CI Giskard on Discord

ドキュメント • ウェブサイト • コミュニティ


[!IMPORTANT] Giskard v3 は、AIエージェントの動的かつマルチターンなテストのために設計された新規書き直し版です。このリリースでは、効率性を高めるために重い依存関係を排除し、より強力なAI脆弱性スキャナーと拡張されたRAG評価を導入しています。どちらも現在は giskard-scan(ベータ版)にネイティブに同梱され、v2への依存はありません。表形式/MLモデル向けのレガシースキャンのみが、引き続きv2専用です。 Giskard v2 は引き続き利用可能ですが、積極的なメンテナンスは行われていません。 進捗をフォロー → v3アナウンスを読む · ロードマップ

インストール

root@kitploit:~
pip install giskard           # checks (+ agents, llm, core)
pip install "giskard[scan]"   # + vulnerability / quality scan
pip install "giskard[openai]" # provider SDK for LLM judges / generators

Python 3.12以降が必要です。

エクストラ追加されるもの
(なし) と依存関係

テレメトリー: giskard-core によるオプションの集計分析。プロンプトや出力が送信されることはありません。 Giskardをインポートする前にオプトアウトしてください: export DO_NOT_TRACK=1 または export GISKARD_TELEMETRY_DISABLED=1。 詳細: giskard-core README。


Giskardは、エージェント型システムのテストと評価のためのオープンソースPythonライブラリです。v3アーキテクチャは、必要な依存関係のみを持つモジュール式の特化パッケージ群で構成され、LLM、ブラックボックスエージェント、マルチステップパイプラインなど、あらゆるものをラップするためにゼロから構築されています。

これらは、giskard-core(共有ユーティリティとテレメトリー)、giskard-llm(プロバイダーに依存しないLLMルーティング)、giskard-agents(エージェントとワークフローのオーケストレーション)という3つの基盤ライブラリの上に構築されています。これらは自動的に導入され、直接使用されることはほとんどありません。

Giskard Checks — エージェントをテストするためのEvalsの作成と適用

root@kitploit:~
pip install giskard-checks

Giskard Checks は、LLMベースのシステムをテストする評価(Evals)を作成するための軽量ライブラリです。単純なアサーションからLLM-as-judge評価までをカバーします。従来のユニットテストとは異なり、Evalsは、同じ入力に対して異なる有効な応答が生成され得る非決定的な出力を対象として設計されています。

Giskard Checksの用途:

  • リグレッションの検出 — 変更後もシステムが正しく動作することを確認
  • RAG品質の検証 — 回答が取得されたコンテキストに基づいているか(grounded)を確認
  • 安全ルールの適用 — 出力がコンテンツポリシーに準拠していることを保証
  • マルチターンエージェントの評価 — 単発のやり取りだけでなく、会話全体をテスト

組み込みのEvalsには、文字列マッチング、比較、正規表現、意味的類似性、およびLLM-as-judgeチェック(Groundedness、Conformity、LLMJudge)が含まれます。

コンセプト

  • Target(ターゲット) — テスト対象のシステム。同期/非同期を問わない任意の呼び出し可能オブジェクト (inputs) -> outputs(オプションで trace 付き)
  • Scenario(シナリオ) — 1つの評価。インタラクション + チェック
  • Check(チェック) — トレースに対するアサーションまたはLLMジャッジ
  • Suite(スイート) — 複数のシナリオをまとめて実行

giskard.agents.Generator は、ワークフロー/ジャッジ用のLLMクライアントです。ユーザーメッセージを合成する giskard.checks の入力ジェネレーター(LLMGenerator)とは異なります。

クイックスタート

root@kitploit:~
import asyncio
from giskard.checks import Scenario, Groundedness


def get_answer(inputs: str) -> str:
    return "Paris"  # replace with your model / agent


async def main() -> None:
    scenario = (
        Scenario("test_france_capital")
        .interact(inputs="What is the capital of France?", outputs=get_answer)
        .check(
            Groundedness(
                name="answer is grounded",
                context="France is in Western Europe. Its capital is Paris.",
            )
        )
    )
    result = await scenario.run()
    result.print_report()


asyncio.run(main())

Groundedness はLLMジャッジです。プロバイダーのエクストラ(例: pip install "giskard[openai]")をインストールし、対応するAPIキーを設定してください。デフォルトモデル: openai/gpt-4o-mini。

Suites、LLMJudge、マルチターンシナリオなどの詳細は、完全なドキュメント を参照してください。


Giskard Scan — AIエージェントの脆弱性スキャナー

root@kitploit:~
pip install "giskard[scan]"   # or: pip install giskard-scan

Giskard Scan は、エージェント型システム向けのレッドチーミングおよび脆弱性スキャンレイヤーです。エージェントの平易な説明文から、プロンプトインジェクション、有害コンテンツ、ステレオタイプ、誤情報などをカバーする敵対的テストスイートを自動生成します。

Giskard Scanの用途:

  • エージェントのレッドチーミング — OWASP LLM Top-10の脅威カテゴリにわたる敵対的入力を自動生成
  • プロンプトインジェクションのプローブ実行 — すぐに使えるインジェクションペイロードの組み込みデータセット
  • カスタムジェネレーターによる拡張 — 独自の ScenarioGenerator インスタンスを generate_suite に渡すか、vulnerability_suite_generator_registry に登録

クイックスタート

root@kitploit:~
import asyncio
from giskard.scan import vulnerability_scan


async def my_agent(inputs: str) -> str:
    # Replace with your agent / model call
    return f"Echo: {inputs}"


async def main() -> None:
    await vulnerability_scan(
        target=my_agent,
        description="A customer support chatbot for an e-commerce platform.",
        languages=["en"],
    )


asyncio.run(main())

スキャンのジェネレーターにも、上記のChecksジャッジと同様に、LLMプロバイダーのエクストラとAPIキーが必要です。

Giskard v2をお探しですか?

Giskard v2には、Scan(自動脆弱性検出)とRAGET(RAG評価テストセット生成)が含まれていました。

LLMエージェントの場合、どちらもv3では giskard-scan に置き換えられています。v2のLLMスキャンの代わりに vulnerability_scan を、RAGETの代わりに quality_scan(KnowledgeBase と共に)を使用してください。

v3はMLモデルにも対応しています。モデルをターゲットとしてラップし、giskard-checks または giskard-scan で評価できます。以下の例が扱うのは、v2専用の自動表形式スキャン(giskard.Model + giskard.Dataset を検査してパフォーマンス、バイアス、堅牢性の問題を自動検出するディテクタースイート)、giskard.testing のMLテストスイート、そしてGiskard Hubです。これらはv3では計画されていません。

root@kitploit:~
pip install "giskard[llm]>2,<3"

Scan — パフォーマンス、バイアス、セキュリティの問題を自動検出

モデルをラップしてスキャンを実行します:

root@kitploit:~
import giskard
import pandas as pd


# Replace my_llm_chain with your actual LLM chain or model inference logic
def model_predict(df: pd.DataFrame):
    """The function takes a DataFrame and must return a list of outputs (one per row)."""
    return [my_llm_chain.run({"query": question}) for question in df["question"]]


giskard_model = giskard.Model(
    model=model_predict,
    model_type="text_generation",
    name="My LLM Application",
    description="A question answering assistant",
    feature_names=["question"],
)

scan_results = giskard.scan(giskard_model)
display(scan_results)

スキャン例

RAGET — RAGアプリケーション向けの評価データセットを生成

ナレッジベースから質問、参照回答、コンテキストを自動生成します:

root@kitploit:~
import pandas as pd
from giskard.rag import generate_testset, KnowledgeBase

# Load your knowledge base documents
df = pd.read_csv("path/to/your/knowledge_base.csv")
knowledge_base = KnowledgeBase.from_pandas(df, columns=["column_1", "column_2"])

testset = generate_testset(
    knowledge_base,
    num_questions=60,
    language="en",
    agent_description="A customer support chatbot for company X",
)

RAGETの例

v2の完全なドキュメント

👋 コミュニティ

AIコミュニティからのコントリビューションを歓迎します! 始めるにはこのガイドをお読みください。Discord の活気あるコミュニティにもぜひ参加してください。

進捗をフォローしてフィードバックをお寄せください: v3アナウンス · ロードマップ

🌟 スターを残してください。プロジェクトが他の人にも見つけてもらいやすくなり、私たちが素晴らしいオープンソースツールを作り続ける原動力になります! 🌟

❤️ 私たちの活動がお役に立つようでしたら、GitHubでのスポンサーをご検討ください。月次スポンサーになると、スポンサーバッジを取得でき、このreadmeに会社を掲載でき、バグ報告を優先的に処理してもらえます。また、コンサルティングプロジェクトへの参加、ワークショップの実施、貴社での講演をご希望の場合には、単発のスポンサーにも対応しています。

ツールをダウンロード
giskard-checks
scangiskard-scan
openai / anthropic / …プロバイダーSDK(pyproject.toml のオプション依存関係を参照)
ステータスパッケージ説明
✅ ベータgiskard-checksテストと評価 — シナリオAPI、組み込みチェック、LLM-as-judge
✅ ベータgiskard-scanエージェント脆弱性スキャナー + RAG/品質評価 — レッドチーミング、プロンプトインジェクション、脱獄、有害コンテンツ(vulnerability_scan、v2 Scan の後継)、およびナレッジベース品質評価(quality_scan、v2 RAGET の後継)