Metadata-Version: 2.4
Name: genai-auditor
Version: 0.1.0
Summary: LangChain-integrated compliance audit handler for GenAI (EU AI Act etc.). Captures prompts, outputs, and model usage with provenance hashing.
Author: GenAI Compliance Auditor Contributors
License-Expression: MIT
Project-URL: Homepage, https://github.com/your-org/genai-auditor
Project-URL: Documentation, https://github.com/your-org/genai-auditor#readme
Project-URL: Repository, https://github.com/your-org/genai-auditor
Keywords: langchain,compliance,audit,ai-act,genai,llm
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: langchain>=0.2.0
Requires-Dist: langchain-community>=0.3.0
Requires-Dist: rich>=13.0.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Provides-Extra: openai
Requires-Dist: langchain-openai>=0.1.0; extra == "openai"
Provides-Extra: google-genai
Requires-Dist: langchain-google-genai>=2.0.0; extra == "google-genai"
Provides-Extra: ollama
Requires-Dist: langchain-community>=0.3.0; extra == "ollama"

# genai-auditor

LangChain に統合できる GenAI コンプライアンス監査パッケージです。

## ディレクトリ構成

```
genai-auditor/
├── pyproject.toml          # ビルド・メタデータ（PyPI 公開用）
├── README.md
├── example.py              # 開発者向け動作確認スクリプト
└── src/
    └── genai_auditor/
        ├── __init__.py     # パッケージエントリ（ComplianceAuditCallbackHandler を公開）
        └── callback.py     # コールバック実装・監査ログ生成・保存ロジック
```  
EU AI Act 等の 2026 年 AI 法規制に対応するため、LLM の入力・出力・モデル名を自動取得し、改ざん防止用のプロビナンスハッシュ付きで監査ログを保存します。

## インストール

```bash
pip install genai-auditor
```

開発版（ローカル）:

```bash
pip install -e /path/to/genai-auditor
```

## 3 行で導入

既存の LangChain コードにコールバックを渡すだけで監査が有効になります。

```python
from langchain_openai import ChatOpenAI
from genai_auditor import ComplianceAuditCallbackHandler

audit = ComplianceAuditCallbackHandler()
llm = ChatOpenAI(model="gpt-4o-mini", callbacks=[audit])
response = llm.invoke("こんにちは")
```

監査ログはデフォルトで `audit_logs.json` に追記されます。

## 監査ログの形式

各エントリには以下が含まれます。

- `run_id`: LangChain の実行 ID
- `model_name`: 使用したモデル名
- `prompts`: 入力プロンプト（リスト）
- `outputs`: LLM 出力テキスト（リスト）
- `started_at` / `ended_at`: ISO 8601 タイムスタンプ（UTC）
- `provenance_hash`: 上記フィールドから計算した SHA-256 ハッシュ（改ざん検知用）

## ログファイルの指定

```python
audit = ComplianceAuditCallbackHandler(audit_log_path="./logs/compliance.json")
```

## ライセンス

MIT
