diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 452bbb7..7febf4c 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -15,9 +15,9 @@ assignees: []
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
# 再現コード...
```
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index 6597729..c1956fe 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -19,9 +19,9 @@ assignees: []
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
# こんな感じで使いたい...
```
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8271ee0..44dc7bc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -58,7 +58,7 @@ Released: 2026-03-02
### Added
- 初回リリース
-- Genflux 評価・レポート・設定 API 用の公式 Python SDK(`GenFlux`, `ConfigClient`, `ReportsClient` 等)
+- GENFLUX 評価・レポート・設定 API 用の公式 Python SDK(`Genflux`, `ConfigClient`, `ReportsClient` 等)
- Pydantic v2 ベースの型付きレスポンス、httpx による HTTP クライアント
- 開発・品質: pre-commit(ruff, pyright), pip-audit, gitleaks, ライセンスコンプライアンスチェック
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 9059b33..688b009 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,6 +1,6 @@
-# Contributing to Genflux Python SDK
+# Contributing to GENFLUX Python SDK
-Genflux Python SDK へのコントリビューションを歓迎します!
+GENFLUX Python SDK へのコントリビューションを歓迎します!
バグ報告・機能要望・ドキュメント改善・コードの改善、いずれも大歓迎です。
---
diff --git a/README.md b/README.md
index c05680c..e364e7b 100644
--- a/README.md
+++ b/README.md
@@ -4,13 +4,13 @@
-
+
- Genflux Python SDK
- Genflux Platform 公式 Python SDK。RAG システムの回答品質スコアリング、セキュリティテスト、ポリシーチェックを Python から実行できます。
+ GENFLUX Python SDK
+ GENFLUX Platform 公式 Python SDK。RAG システムの回答品質スコアリング、セキュリティテスト、ポリシーチェックを Python から実行できます。
[](https://github.com/elith-co-jp/genflux-python-sdk/releases/tag/v0.1.2)
@@ -25,21 +25,21 @@
- [クイックスタート](./docs/QUICKSTART.md) — Config 不要で今すぐ試せるサンプル
- [ワークフロー](./docs/WORKFLOW.md) — バッチ評価、CI/CD 統合、エラーハンドリング
-## Why Genflux
+## Why GENFLUX
RAG システムを本番運用する際、「回答品質が十分か」「安全性に問題はないか」を継続的に検証する仕組みが不可欠です。
-Genflux は **RAG の品質・安全性を数値で可視化** するプラットフォームです。この SDK を使って Python から直接評価を実行できます。
+GENFLUX は **RAG の品質・安全性を数値で可視化** するプラットフォームです。この SDK を使って Python から直接評価を実行できます。
- **8 種類の評価メトリック** — Faithfulness、Hallucination、Toxicity など、RAG に必要な品質指標をワンライナーで計測
- **CI/CD 統合** — テストパイプラインに組み込み、品質劣化を自動検知([ワークフロー例](./docs/WORKFLOW.md#cicd統合))
-- **セキュリティテスト** — Genflux Platform 上で Red Teaming による攻撃シミュレーションを実行し、脆弱性を事前に検出
-- **ポリシーチェック** — Genflux Platform 上で AI 事業者ガイドライン準拠を自動検証
+- **セキュリティテスト** — GENFLUX Platform 上で Red Teaming による攻撃シミュレーションを実行し、脆弱性を事前に検出
+- **ポリシーチェック** — GENFLUX Platform 上で AI 事業者ガイドライン準拠を自動検証
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
result = client.evaluation().faithfulness(
question="What is RAG?",
answer="RAG is Retrieval-Augmented Generation.",
@@ -138,14 +138,14 @@ if result.score < 0.8:
```mermaid
graph TB
- User["Your Code"] --> GF["Genflux Client"]
+ User["Your Code"] --> GF["GENFLUX Client"]
GF --> CC["client.configs
ConfigClient"]
GF --> JC["client.jobs
JobsClient"]
GF --> RC["client.reports
ReportsClient"]
GF --> EC["client.evaluation()
EvaluationClient"]
- CC --> API["Genflux Backend API"]
+ CC --> API["GENFLUX Backend API"]
JC --> API
RC --> API
EC --> API
@@ -160,7 +160,7 @@ graph TB
| クライアント | アクセス方法 | 説明 |
|---|---|---|
-| `GenFlux` | `GenFlux()` | メインクライアント(認証・サブクライアント管理) |
+| `Genflux` | `Genflux()` | メインクライアント(認証・サブクライアント管理) |
| `EvaluationClient` | `client.evaluation()` | 8 種類のメトリックによる評価実行 |
| `ConfigClient` | `client.configs` | RAG API 設定の CRUD |
| `JobsClient` | `client.jobs` | 非同期ジョブの作成・監視・キャンセル |
@@ -175,9 +175,9 @@ pip install genflux
## クイックスタート
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux() # 環境変数 GENFLUX_API_KEY を使用
+client = Genflux() # 環境変数 GENFLUX_API_KEY を使用
evaluator = client.evaluation()
result = evaluator.faithfulness(
@@ -193,7 +193,7 @@ print(result.reason) # "The answer is based on the provided context."
API Key は明示的に渡すこともできます。
```python
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
```
## 評価メトリック
@@ -265,7 +265,7 @@ except JobFailedError as e:
| `GENFLUX_ENVIRONMENT` | `"local"` / `"dev"` / `"prod"` | `"prod"` |
| `GENFLUX_API_BASE_URL` | ベース URL の上書き(最優先) | — |
-API Key は [Genflux Platform](https://www.platform.genflux.jp/) から発行してください。
+API Key は [GENFLUX Platform](https://www.platform.genflux.jp/) から発行してください。
## サポート
diff --git a/docs/API_REFERENCE.md b/docs/API_REFERENCE.md
index 24e025c..d0973dd 100644
--- a/docs/API_REFERENCE.md
+++ b/docs/API_REFERENCE.md
@@ -2,9 +2,9 @@
-# Genflux Python SDK - API Reference
+# GENFLUX Python SDK - API Reference
-Genflux Python SDK の完全な API リファレンスです。
+GENFLUX Python SDK の完全な API リファレンスです。
このドキュメントはソースコードの docstring・型ヒントから**自動生成**されています。
> ⚠️ **このファイルは自動生成物です。直接編集しないでください。**
@@ -17,7 +17,7 @@ Genflux Python SDK の完全な API リファレンスです。
- [1. 概要](#1-概要)
- [2. クライアント](#2-クライアント)
- - [2.1 GenFlux](#21-genflux)
+ - [2.1 Genflux](#21-genflux)
- [2.2 ConfigClient](#22-configclient)
- [2.3 JobsClient](#23-jobsclient)
- [2.4 ReportsClient](#24-reportsclient)
@@ -30,9 +30,9 @@ Genflux Python SDK の完全な API リファレンスです。
## 1. 概要
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux() # GENFLUX_API_KEY 環境変数を使用
+client = Genflux() # GENFLUX_API_KEY 環境変数を使用
evaluator = client.evaluation()
result = evaluator.faithfulness(
@@ -47,14 +47,14 @@ print(f"Score: {result.score}") # 0.0 ~ 1.0
```mermaid
graph TB
- User["Your Code"] --> GF["Genflux Client"]
+ User["Your Code"] --> GF["GENFLUX Client"]
GF --> CC["client.configs
ConfigClient"]
GF --> JC["client.jobs
JobsClient"]
GF --> RC["client.reports
ReportsClient"]
GF --> EC["client.evaluation()
EvaluationClient"]
- CC --> API["Genflux Backend API"]
+ CC --> API["GENFLUX Backend API"]
JC --> API
RC --> API
EC --> API
@@ -71,7 +71,7 @@ graph TB
| クライアント | アクセス方法 | 説明 |
|---|---|---|
-| [`GenFlux`](#genflux-1) | `GenFlux()` | メインクライアント(認証・サブクライアント管理) |
+| [`Genflux`](#genflux-1) | `Genflux()` | メインクライアント(認証・サブクライアント管理) |
| [`EvaluationClient`](#evaluationclient) | `client.evaluation()` | 8 種類のメトリックによる評価実行 |
| [`ConfigClient`](#configclient) | `client.configs` | RAG API 設定の CRUD |
| [`JobsClient`](#jobsclient) | `client.jobs` | 非同期ジョブの作成・監視・キャンセル |
@@ -94,9 +94,9 @@ graph TB
## 2. クライアント
-### 2.1 `GenFlux`
+### 2.1 `Genflux`
-GenFlux APIクライアント。
+Genflux APIクライアント。
#### 属性
@@ -112,23 +112,23 @@ GenFlux APIクライアント。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| `api_key` | `str \| None` | No | API key for authentication. If not provided, uses GENFLUX_API_KEY env var. |
-| `base_url` | `str \| None` | No | Base URL for the GenFlux API. If not provided, uses GENFLUX_API_BASE_URL env var or constructs from environment setting. |
+| `base_url` | `str \| None` | No | Base URL for the Genflux API. If not provided, uses GENFLUX_API_BASE_URL env var or constructs from environment setting. |
| `environment` | `str \| None` | No | Environment name ("local", "dev", or "prod"). Uses GENFLUX_ENVIRONMENT env var if not provided. Defaults to "prod". |
| `timeout` | `float` | No | Request timeout in seconds (default: 60.0) |
#### 使用例
```python
-from genflux import GenFlux
+from genflux import Genflux
# Production (default)
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
# Development
-client = GenFlux(api_key="pk_xxx", environment="dev")
+client = Genflux(api_key="pk_xxx", environment="dev")
# Local development
-client = GenFlux(api_key="dev_test_key", environment="local")
+client = Genflux(api_key="dev_test_key", environment="local")
```
#### メソッド
@@ -149,7 +149,7 @@ client = GenFlux(api_key="dev_test_key", environment="local")
```python
# With explicit config
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
evaluator = client.evaluation(config_id="config_123")
result = evaluator.faithfulness(
question="What is Python?",
@@ -524,8 +524,8 @@ IDでレポートを取得します。
**例:**
```python
-from genflux import GenFlux
-client = GenFlux(api_key="genflux_xxx")
+from genflux import Genflux
+client = Genflux(api_key="genflux_xxx")
# Get summary report
report = client.reports.get(
@@ -688,7 +688,7 @@ result = evaluator.contextual_relevancy(
**例:**
```python
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
evaluator = client.evaluation(config_id="config_123")
result = evaluator.evaluate(
@@ -1159,22 +1159,22 @@ RedTeamサマリ
## 4. 例外
-すべての例外は `GenFluxError` を基底クラスとしています。
+すべての例外は `GenfluxError` を基底クラスとしています。
### 4.1 例外一覧
| 例外 | 継承元 | HTTP ステータス | 説明 |
|---|---|---|---|
-| `GenFluxError` | `Exception` | — | 基底例外クラス |
-| `APIError` | `GenFluxError` | — | API リクエスト失敗(基底) |
+| `GenfluxError` | `Exception` | — | 基底例外クラス |
+| `APIError` | `GenfluxError` | — | API リクエスト失敗(基底) |
| `AuthenticationError` | `APIError` | 401 | API Key が無効または未設定 |
| `NotFoundError` | `APIError` | 404 | リソースが見つからない |
| `ValidationError` | `APIError` | 400, 422 | リクエストパラメータが不正 |
| `RateLimitError` | `APIError` | 429 | レート制限超過 |
-| `TimeoutError` | `GenFluxError` | — | ジョブのタイムアウト |
-| `JobFailedError` | `GenFluxError` | — | ジョブ実行の失敗 |
-| `ConfigNotFoundError` | `GenFluxError` | — | 指定した Config が存在しない |
-| `ResourceNotFoundError` | `GenFluxError` | — | リソースが見つからない |
+| `TimeoutError` | `GenfluxError` | — | ジョブのタイムアウト |
+| `JobFailedError` | `GenfluxError` | — | ジョブ実行の失敗 |
+| `ConfigNotFoundError` | `GenfluxError` | — | 指定した Config が存在しない |
+| `ResourceNotFoundError` | `GenfluxError` | — | リソースが見つからない |
> **Note:** `APIError` 系は HTTP レスポンスに起因する例外です。`status_code` 属性でステータスコードを取得できます。
> `TimeoutError` / `JobFailedError` はジョブ実行に起因する例外で、HTTP ステータスコードはありません。
@@ -1182,7 +1182,7 @@ RedTeamサマリ
### 4.2 例外ハンドリング
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.exceptions import (
AuthenticationError,
RateLimitError,
@@ -1190,7 +1190,7 @@ from genflux.exceptions import (
JobFailedError,
)
-client = GenFlux()
+client = Genflux()
evaluator = client.evaluation()
try:
@@ -1275,10 +1275,10 @@ job.wait()用のプログレスコールバックを作成します。
**例:**
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.progress import create_progress_callback
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
job = client.jobs.create(...)
# With progress bar
@@ -1298,4 +1298,4 @@ result = client.jobs.wait(job.id, callback=callback)
*Auto-generated at 2026-03-23 07:15 UTC by `scripts/generate_api_reference.py`*
-
+
diff --git a/docs/BACKEND_API_REFERENCE.md b/docs/BACKEND_API_REFERENCE.md
index c7c0797..8ccda29 100644
--- a/docs/BACKEND_API_REFERENCE.md
+++ b/docs/BACKEND_API_REFERENCE.md
@@ -1,6 +1,6 @@
-# GenFlux Backend API Reference - External API
+# GENFLUX Backend API Reference - External API
-> **📘 Note**: このドキュメントは、GenFlux Python SDK が内部で使用する REST API の仕様です。
+> **📘 Note**: このドキュメントは、GENFLUX Python SDK が内部で使用する REST API の仕様です。
> SDK の使い方については、[Python SDK API Reference](./API_REFERENCE.md) を参照してください。
## 📚 関連ドキュメント
@@ -14,7 +14,7 @@
**Version**: 1.0.0
-GenFlux Platform Backend API
+GENFLUX Platform Backend API
## API Surfaces
diff --git a/docs/DEVELOPER_API_REFERENCE.md b/docs/DEVELOPER_API_REFERENCE.md
index c768a42..92268ee 100644
--- a/docs/DEVELOPER_API_REFERENCE.md
+++ b/docs/DEVELOPER_API_REFERENCE.md
@@ -2,7 +2,7 @@
-# Genflux Python SDK - Developer API Reference
+# GENFLUX Python SDK - Developer API Reference
開発者向けの詳細な API リファレンスです。
内部クラス・プライベートメソッドも含みます。
@@ -26,9 +26,9 @@
---
## クライアント
-### `GenFlux`
+### `Genflux`
-GenFlux APIクライアント。
+Genflux APIクライアント。
#### 属性
@@ -44,23 +44,23 @@ GenFlux APIクライアント。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| `api_key` | `str \| None` | No | API key for authentication. If not provided, uses GENFLUX_API_KEY env var. |
-| `base_url` | `str \| None` | No | Base URL for the GenFlux API. If not provided, uses GENFLUX_API_BASE_URL env var or constructs from environment setting. |
+| `base_url` | `str \| None` | No | Base URL for the Genflux API. If not provided, uses GENFLUX_API_BASE_URL env var or constructs from environment setting. |
| `environment` | `str \| None` | No | Environment name ("local", "dev", or "prod"). Uses GENFLUX_ENVIRONMENT env var if not provided. Defaults to "prod". |
| `timeout` | `float` | No | Request timeout in seconds (default: 60.0) |
#### 使用例
```python
-from genflux import GenFlux
+from genflux import Genflux
# Production (default)
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
# Development
-client = GenFlux(api_key="pk_xxx", environment="dev")
+client = Genflux(api_key="pk_xxx", environment="dev")
# Local development
-client = GenFlux(api_key="dev_test_key", environment="local")
+client = Genflux(api_key="dev_test_key", environment="local")
```
#### メソッド
@@ -181,7 +181,7 @@ APIにPUTリクエストを送信します。
```python
# With explicit config
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
evaluator = client.evaluation(config_id="config_123")
result = evaluator.faithfulness(
question="What is Python?",
@@ -200,7 +200,7 @@ result = evaluator.faithfulness(
### `BaseClient`
-GenFlux API用の基底HTTPクライアント。
+Genflux API用の基底HTTPクライアント。
#### メソッド
@@ -841,8 +841,8 @@ IDでレポートを取得します。
**例:**
```python
-from genflux import GenFlux
-client = GenFlux(api_key="genflux_xxx")
+from genflux import Genflux
+client = Genflux(api_key="genflux_xxx")
# Get summary report
report = client.reports.get(
@@ -1045,7 +1045,7 @@ result = evaluator.contextual_relevancy(
**例:**
```python
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
evaluator = client.evaluation(config_id="config_123")
result = evaluator.evaluate(
@@ -1516,15 +1516,15 @@ RedTeamサマリ
## 例外
-### `GenFluxError`
+### `GenfluxError`
*継承:* `Exception`
-GenFlux SDKの基底例外クラス。
+GENFLUX SDKの基底例外クラス。
### `APIError`
-*継承:* `GenFluxError`
+*継承:* `GenfluxError`
APIリクエストが失敗しました。
@@ -1548,13 +1548,13 @@ APIリクエストが失敗しました。
### `TimeoutError`
-*継承:* `GenFluxError`
+*継承:* `GenfluxError`
操作がタイムアウトしました。
### `JobFailedError`
-*継承:* `GenFluxError`
+*継承:* `GenfluxError`
ジョブの実行に失敗しました。
@@ -1566,13 +1566,13 @@ APIリクエストが失敗しました。
### `ConfigNotFoundError`
-*継承:* `GenFluxError`
+*継承:* `GenfluxError`
設定が見つかりません。
### `ResourceNotFoundError`
-*継承:* `GenFluxError`
+*継承:* `GenfluxError`
汎用リソースが見つからないエラー。
@@ -1639,4 +1639,4 @@ job.wait()用のプログレスコールバックを作成します。
*Auto-generated at 2026-03-23 07:15 UTC by `scripts/generate_api_reference.py`*
-
+
diff --git a/docs/EXAMPLES.md b/docs/EXAMPLES.md
index 9133b8b..0cecdf4 100644
--- a/docs/EXAMPLES.md
+++ b/docs/EXAMPLES.md
@@ -1,4 +1,4 @@
-# Genflux Python SDK - サンプルコード集
+# GENFLUX Python SDK - サンプルコード集
実際のユースケースごとのサンプルコードを紹介します。
@@ -22,9 +22,9 @@
### Faithfulness 評価
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
# 既存のConfigを使用
configs = client.configs.list()
@@ -57,9 +57,9 @@ else:
### 同じデータで複数のメトリックを評価
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
evaluator = client.evaluation(config_id="xxx")
question = "AIとは何ですか?"
@@ -103,9 +103,9 @@ print(f"\n平均スコア: {avg_score:.2f}")
### 複数のテストケースを順次評価
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
evaluator = client.evaluation(config_id="xxx")
# テストケース
@@ -167,9 +167,9 @@ print(f"\n合格率: {passed_count}/{total_count} ({passed_count/total_count*100
### Config の完全なライフサイクル
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
# 1. Config作成
print("1. Config作成中...")
@@ -229,9 +229,9 @@ print(" ✅ Config削除完了")
```python
import time
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
# Job作成(低レベルAPI)
print("Job作成中...")
@@ -289,7 +289,7 @@ if final_job.results:
```python
import time
-from genflux import GenFlux
+from genflux import Genflux
from genflux.exceptions import (
AuthenticationError,
NotFoundError,
@@ -300,7 +300,7 @@ from genflux.exceptions import (
APIError
)
-client = GenFlux()
+client = Genflux()
def evaluate_with_retry(evaluator, max_retries=3):
"""リトライ機能付き評価"""
@@ -398,14 +398,14 @@ CI/CD用評価スクリプト
"""
import sys
-from genflux import GenFlux
+from genflux import Genflux
# 閾値設定
FAITHFULNESS_THRESHOLD = 0.7
RELEVANCY_THRESHOLD = 0.7
def main():
- client = GenFlux()
+ client = Genflux()
# Configを取得
configs = client.configs.list()
@@ -486,9 +486,9 @@ if __name__ == "__main__":
### プログレスバーのカスタマイズ
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
evaluator = client.evaluation(config_id="xxx")
# 1. プログレスバー非表示
@@ -548,7 +548,7 @@ result = evaluator.faithfulness(
## まとめ
-これらのサンプルコードを参考に、Genflux Python SDKを活用してください。
+これらのサンプルコードを参考に、GENFLUX Python SDKを活用してください。
さらに詳しい情報は以下を参照:
- [README.md](../README.md) - 基本的な使い方
@@ -556,5 +556,5 @@ result = evaluator.faithfulness(
---
-**Genflux Python SDK - サンプルコード集**
+**GENFLUX Python SDK - サンプルコード集**
diff --git a/docs/LOCAL_SETUP.md b/docs/LOCAL_SETUP.md
index c8c99cb..ca0f8f2 100644
--- a/docs/LOCAL_SETUP.md
+++ b/docs/LOCAL_SETUP.md
@@ -1,6 +1,6 @@
-# Genflux Python SDK(ローカル環境)
+# GENFLUX Python SDK(ローカル環境)
-Genflux Platform の公式Python SDKです。RAG(Retrieval-Augmented Generation)システムの評価、セキュリティテスト、ポリシーチェックを簡単に実行することができます。
+GENFLUX Platform の公式Python SDKです。RAG(Retrieval-Augmented Generation)システムの評価、セキュリティテスト、ポリシーチェックを簡単に実行することができます。
[](https://www.python.org/downloads/)
[](LICENSE)
@@ -46,7 +46,7 @@ git clone
### 2. バックエンドサーバーの起動
-Genflux Platform Backend を起動します。
+GENFLUX Platform Backend を起動します。
```bash
# バックエンドディレクトリに移動
@@ -123,7 +123,7 @@ uv pip install -e .
#### 本番環境(Production)
```bash
-# API Key(Genflux Platform の管理画面から取得)
+# API Key(GENFLUX Platform の管理画面から取得)
export GENFLUX_API_KEY="genflux_your_api_key_here"
# 環境指定(省略可: デフォルトは "prod")
@@ -161,7 +161,7 @@ export GENFLUX_ENVIRONMENT="local"
- `prod`: 本番環境(デフォルト)
**注意**:
-- `GENFLUX_API_KEY`: Genflux Platform の管理画面から取得してください
+- `GENFLUX_API_KEY`: GENFLUX Platform の管理画面から取得してください
- `GENFLUX_ENVIRONMENT`: 省略した場合、**本番環境(prod)がデフォルト**です
- `GENFLUX_API_BASE_URL`: カスタムURLが必要な特殊な環境でのみ使用
@@ -174,16 +174,16 @@ export GENFLUX_ENVIRONMENT="local"
### 最初の評価を実行
```python
-from genflux import GenFlux
+from genflux import Genflux
# 本番環境(デフォルト)
-client = GenFlux() # 環境変数 GENFLUX_API_KEY が必要
+client = Genflux() # 環境変数 GENFLUX_API_KEY が必要
# 開発環境
-client = GenFlux(environment="dev")
+client = Genflux(environment="dev")
# ローカル環境
-client = GenFlux(environment="local")
+client = Genflux(environment="local")
# 評価を実行(デフォルトのConfigを使用)
evaluator = client.evaluation()
@@ -343,4 +343,4 @@ MIT License - 詳細は [LICENSE](LICENSE) ファイルを参照してくださ
---
-**Genflux - RAG Evaluation Made Simple**
+**GENFLUX - RAG Evaluation Made Simple**
diff --git a/docs/QUICKSTART.md b/docs/QUICKSTART.md
index 249a726..8d9d00f 100644
--- a/docs/QUICKSTART.md
+++ b/docs/QUICKSTART.md
@@ -1,6 +1,6 @@
-# Genflux Python SDK - クイックスタート
+# GENFLUX Python SDK - クイックスタート
-最も簡単な方法で Genflux SDK を使い始めましょう。このガイドでは、Config 作成から評価実行まで、最小限のコードで試せます。
+最も簡単な方法で GENFLUX SDK を使い始めましょう。このガイドでは、Config 作成から評価実行まで、最小限のコードで試せます。
---
@@ -17,7 +17,7 @@
## 前提条件
- Python 3.11 以上
-- Genflux Platform で発行した API Key(環境変数 `GENFLUX_API_KEY` に設定)
+- GENFLUX Platform で発行した API Key(環境変数 `GENFLUX_API_KEY` に設定)
---
@@ -26,10 +26,10 @@
最もシンプルな方法で評価を実行してみましょう。
```python
-from genflux import GenFlux
+from genflux import Genflux
# クライアント初期化(環境変数から自動取得)
-client = GenFlux()
+client = Genflux()
# 評価を実行(デフォルトのConfigを使用)
evaluator = client.evaluation() # config_idを指定しない場合、デフォルトを使用
@@ -62,10 +62,10 @@ Reason: The answer is based on the provided context.
特定のRAG APIを評価したい場合は、Configを作成して指定できます。
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.models.config import ConfigCreate
-client = GenFlux()
+client = Genflux()
# Config を作成
config = client.configs.create(
@@ -100,9 +100,9 @@ print(f"Score: {result.score}")
複数の質問を一度に評価してみましょう。
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
evaluator = client.evaluation() # デフォルトのConfigを使用
# テストケース
@@ -157,9 +157,9 @@ print("完了!")
同じデータで複数のメトリックを評価してみましょう。
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
evaluator = client.evaluation() # デフォルトのConfigを使用
# 評価データ
diff --git a/docs/WORKFLOW.md b/docs/WORKFLOW.md
index 612e2ac..77e5bf4 100644
--- a/docs/WORKFLOW.md
+++ b/docs/WORKFLOW.md
@@ -1,4 +1,4 @@
-# Genflux Python SDK - 本格的なワークフロー
+# GENFLUX Python SDK - 本格的なワークフロー
実践的なユースケースに基づいた、本格的なワークフロー例を紹介します。
@@ -25,10 +25,10 @@
### 基本的なバッチ評価
```python
-from genflux import GenFlux
+from genflux import Genflux
# クライアント初期化
-client = GenFlux()
+client = Genflux()
# Config取得
configs = client.configs.list()
@@ -152,9 +152,9 @@ if failed_tests:
同じデータで複数のメトリックを評価し、総合的に判定します。
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
configs = client.configs.list()
config_id = str(configs.configs[0].id)
@@ -250,11 +250,11 @@ AI事業者ガイドラインへの準拠をチェックします。`execution_t
ポリシー用 Config を用意し、`config_id` を指定して実行します。
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.models.config import ConfigCreate
from genflux.progress import ProgressBar
-client = GenFlux()
+client = Genflux()
# Config の取得または作成
POLICY_CONFIG_NAME="My RAG API (PolicyCheck)"
@@ -315,10 +315,10 @@ if details.details and details.details.recommendations:
`config_id` を指定せず、アカウントのデフォルト Config で実行します。
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.progress import ProgressBar
-client = GenFlux()
+client = Genflux()
# Job 作成と完了待ち(デフォルト config 使用)
job = client.jobs.create(execution_type="policy_check")
@@ -353,11 +353,11 @@ if details.details and details.details.recommendations:
評価対象 API 用の Config を用意し、`config_id` を指定して実行します。
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.models.config import ConfigCreate
from genflux.progress import ProgressBar
-client = GenFlux()
+client = Genflux()
# Config の取得または作成(RedTeam 評価対象 API 用)
REDTEAM_CONFIG_NAME = "MY RAG API (RedTeam)"
@@ -427,10 +427,10 @@ if details.details and details.details.recommendations:
`config_id` を指定せず、アカウントのデフォルト Config で実行します。
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.progress import ProgressBar
-client = GenFlux()
+client = Genflux()
# Job 作成と完了待ち(デフォルト config 使用)
execution_type = "redteam_static" # または "redteam_dynamic"
@@ -470,7 +470,7 @@ if details.details and details.details.recommendations:
```python
import time
-from genflux import GenFlux
+from genflux import Genflux
from genflux.exceptions import (
AuthenticationError,
NotFoundError,
@@ -481,7 +481,7 @@ from genflux.exceptions import (
APIError
)
-client = GenFlux()
+client = Genflux()
def evaluate_with_retry(
evaluator,
@@ -583,9 +583,9 @@ Job の作成、監視、キャンセルの例です。
```python
import time
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
# Job作成(低レベルAPI)
print("Job作成中...")
@@ -658,14 +658,14 @@ CI/CD用評価スクリプト
"""
import sys
-from genflux import GenFlux
+from genflux import Genflux
# 閾値設定
FAITHFULNESS_THRESHOLD = 0.7
RELEVANCY_THRESHOLD = 0.7
def main():
- client = GenFlux()
+ client = Genflux()
# Configを取得
configs = client.configs.list()
@@ -785,10 +785,10 @@ jobs:
進捗表示をカスタマイズする例です。
```python
-from genflux import GenFlux
+from genflux import Genflux
import datetime
-client = GenFlux()
+client = Genflux()
configs = client.configs.list()
config_id = str(configs.configs[0].id)
evaluator = client.evaluation(config_id)
@@ -848,9 +848,9 @@ result = evaluator.faithfulness(
評価結果のレポートを取得して分析する例です。
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux()
+client = Genflux()
# 最近のJobを取得
jobs = client.jobs.list(
diff --git a/example.py b/example.py
index 0720b6b..7964bc4 100644
--- a/example.py
+++ b/example.py
@@ -1,7 +1,7 @@
-"""GenFlux SDK の動作確認サンプル."""
+"""GENFLUX SDK の動作確認サンプル."""
import genflux
-from genflux import GenFlux
+from genflux import Genflux
def main() -> None:
@@ -9,12 +9,12 @@ def main() -> None:
# モジュール関数を試す
print("=== genflux モジュール ===")
print(genflux.hello()) # type: ignore[attr-defined]
- print(genflux.hello("GenFlux")) # type: ignore[attr-defined]
+ print(genflux.hello("GENFLUX")) # type: ignore[attr-defined]
print(f"Version: {genflux.version()}") # type: ignore[attr-defined]
# クライアントを試す
- print("\n=== GenFlux Client ===")
- client = GenFlux()
+ print("\n=== GENFLUX Client ===")
+ client = Genflux()
# ping
result = client.ping() # type: ignore[attr-defined]
diff --git a/examples/config_example.py b/examples/config_example.py
index b0fd4c2..1a06598 100644
--- a/examples/config_example.py
+++ b/examples/config_example.py
@@ -1,6 +1,6 @@
"""Example: How to use ConfigClient.
-This example demonstrates how to manage evaluation configs using the GenFlux SDK.
+This example demonstrates how to manage evaluation configs using the GENFLUX SDK.
"""
import os
@@ -23,7 +23,7 @@ def main():
client = ConfigClient(api_key=api_key)
print("="* 70)
- print("GenFlux ConfigClient Example")
+ print("GENFLUX ConfigClient Example")
print("=" * 70)
# 1. Create a new config
@@ -31,7 +31,7 @@ def main():
config = client.create(
ConfigCreate( # type: ignore[call-arg]
name="My First Config",
- description="Example configuration for GenFlux",
+ description="Example configuration for GENFLUX",
api_endpoint="https://api.openai.com/v1/chat/completions",
auth_type="bearer_token",
auth_token="your_openai_api_key_here",
diff --git a/examples/quickstart.py b/examples/quickstart.py
index 68d6941..3518e19 100644
--- a/examples/quickstart.py
+++ b/examples/quickstart.py
@@ -1,4 +1,4 @@
-"""QuickStart: GenFlux SDK の最小限の使用例
+"""QuickStart: GENFLUX SDK の最小限の使用例
このファイルをコピーして、自分のプロジェクトで使用できます。
"""
@@ -13,14 +13,14 @@
def main():
- """GenFlux SDK クイックスタート"""
+ """GENFLUX SDK クイックスタート"""
# Step 1: API Keyを設定
api_key = os.getenv("GENFLUX_API_KEY", "your_api_key_here")
# Step 2: クライアントを初期化
client = ConfigClient(api_key=api_key)
- print("🚀 GenFlux SDK QuickStart")
+ print("🚀 GENFLUX SDK QuickStart")
print("=" * 50)
# Step 3: Configを作成
diff --git a/examples/simple_demo.py b/examples/simple_demo.py
index add769b..4b6fdbf 100644
--- a/examples/simple_demo.py
+++ b/examples/simple_demo.py
@@ -1,4 +1,4 @@
-"""GenFlux SDK - Simple Demo
+"""GENFLUX SDK - Simple Demo
環境変数の設定:
# 本番環境
@@ -14,15 +14,15 @@
export GENFLUX_ENVIRONMENT="local"
"""
-from genflux import GenFlux
+from genflux import Genflux
# 初期化 (環境変数から自動取得、デフォルトは本番環境)
-client = GenFlux()
+client = Genflux()
# または、明示的に環境を指定
-# client = GenFlux(environment="prod") # 本番環境
-# client = GenFlux(environment="dev") # 開発環境
-# client = GenFlux(environment="local") # ローカル開発
+# client = Genflux(environment="prod") # 本番環境
+# client = Genflux(environment="dev") # 開発環境
+# client = Genflux(environment="local") # ローカル開発
# Config取得
configs_response = client.configs.list()
diff --git a/llms-full.txt b/llms-full.txt
index 7d32a4f..6e942cb 100644
--- a/llms-full.txt
+++ b/llms-full.txt
@@ -1,14 +1,14 @@
-# Genflux Python SDK — Full Context for LLMs
+# GENFLUX Python SDK — Full Context for LLMs
-> Genflux Python SDK は RAG(Retrieval-Augmented Generation)システムの**評価・セキュリティテスト・ポリシーチェック**を Python から実行するための公式クライアントライブラリです。このファイルには LLM がコードを生成・修正するために必要な全 API 情報が含まれています。
+> GENFLUX Python SDK は RAG(Retrieval-Augmented Generation)システムの**評価・セキュリティテスト・ポリシーチェック**を Python から実行するための公式クライアントライブラリです。このファイルには LLM がコードを生成・修正するために必要な全 API 情報が含まれています。
## Quick Start
```python
-from genflux import GenFlux
+from genflux import Genflux
# Initialize (GENFLUX_API_KEY env var or explicit)
-client = GenFlux(api_key="pk_xxx")
+client = Genflux(api_key="pk_xxx")
# Simple evaluation
evaluator = client.evaluation(config_id="cfg_123") # config_id optional
@@ -40,7 +40,7 @@ report = client.reports.get(report_id=jobs[0].id, view="details")
## Architecture
```
-GenFlux(api_key)
+Genflux(api_key)
├── .evaluation(config_id) → EvaluationClient
│ ├── .faithfulness(q, a, contexts) → MetricResult
│ ├── .answer_relevancy(q, a) → MetricResult
@@ -79,20 +79,20 @@ Priority: `GENFLUX_API_BASE_URL` > `GENFLUX_ENVIRONMENT` > default (`"prod"`).
Everything exported from `genflux/__init__.py`:
```python
-# Clients: GenFlux, ConfigClient, EvaluationClient, JobsClient, ReportsClient
+# Clients: Genflux, ConfigClient, EvaluationClient, JobsClient, ReportsClient
# Models: Config, ConfigCreate, ConfigUpdate, ConfigListResponse, Job, JobProgress, MetricResult, Report, ReportSummary, ReportDetails, EvaluationSummary, RedTeamSummary, PolicySummary, CategoryBreakdown, FailedCase, Violation
-# Errors: GenFluxError, APIError, AuthenticationError, NotFoundError, ValidationError, TimeoutError, JobFailedError, RateLimitError, ConfigNotFoundError, ResourceNotFoundError
+# Errors: GenfluxError, APIError, AuthenticationError, NotFoundError, ValidationError, TimeoutError, JobFailedError, RateLimitError, ConfigNotFoundError, ResourceNotFoundError
# Utils: ProgressBar, create_progress_callback
```
-## Genflux Client
+## GENFLUX Client
```python
@dataclass
-class GenFlux(api_key: str | None = None, base_url: str | None = None, environment: str | None = None, timeout: float = 60.0) -> None
+class Genflux(api_key: str | None = None, base_url: str | None = None, environment: str | None = None, timeout: float = 60.0) -> None
```
-GenFlux APIクライアント。
+GENFLUX APIクライアント。
**Constructor Parameters:**
@@ -414,7 +414,7 @@ RedTeamサマリ
```
Exception
-└── GenFluxError (base)
+└── GenfluxError (base)
├── APIError (status_code, message, details)
│ ├── AuthenticationError (401)
│ ├── NotFoundError (404)
@@ -428,7 +428,7 @@ Exception
All exceptions:
-- `GenFluxError`: GenFlux SDKの基底例外クラス。
+- `GenfluxError`: GENFLUX SDKの基底例外クラス。
- `APIError`: APIリクエストが失敗しました。
- `AuthenticationError`: 認証に失敗しました(401)。
- `NotFoundError`: リソースが見つかりません(404)。
@@ -458,7 +458,7 @@ All exceptions:
genflux-python-sdk/
├── src/genflux/ # SDK source
│ ├── __init__.py # Public API (__all__)
-│ ├── client.py # Genflux main client
+│ ├── client.py # GENFLUX main client
│ ├── evaluation.py # EvaluationClient
│ ├── jobs.py # JobsClient
│ ├── progress.py # Progress display utilities
diff --git a/llms.txt b/llms.txt
index 49062df..b9d77e0 100644
--- a/llms.txt
+++ b/llms.txt
@@ -1,13 +1,13 @@
-# Genflux Python SDK
+# GENFLUX Python SDK
-> Genflux Python SDK は RAG(Retrieval-Augmented Generation)システムの**評価・セキュリティテスト・ポリシーチェック**を Python から実行するための公式クライアントライブラリです。同期的な API の裏で非同期 Job をポーリングし、結果を返すアーキテクチャを採用しています。
+> GENFLUX Python SDK は RAG(Retrieval-Augmented Generation)システムの**評価・セキュリティテスト・ポリシーチェック**を Python から実行するための公式クライアントライブラリです。同期的な API の裏で非同期 Job をポーリングし、結果を返すアーキテクチャを採用しています。
## Quick Start
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux(api_key="pk_xxx") # or set GENFLUX_API_KEY env var
+client = Genflux(api_key="pk_xxx") # or set GENFLUX_API_KEY env var
evaluator = client.evaluation(config_id="cfg_123") # config_id is optional
result = evaluator.faithfulness(
question="What is Python?",
@@ -22,7 +22,7 @@ print(result.score, result.reason)
The core execution flow is:
```
-GenFlux(api_key) → .evaluation(config_id) → EvaluationClient
+Genflux(api_key) → .evaluation(config_id) → EvaluationClient
→ EvaluationClient.faithfulness(q, a, contexts)
→ JobsClient.create() → Backend API (Job Queue)
→ JobsClient.wait() → Poll until completed
@@ -73,7 +73,7 @@ Priority: `GENFLUX_API_BASE_URL` > `GENFLUX_ENVIRONMENT` > default (`"prod"`).
```
src/genflux/
├── __init__.py # Public API (__all__) — single source of truth
-├── client.py # Genflux main client (entry point)
+├── client.py # GENFLUX main client (entry point)
├── evaluation.py # EvaluationClient (12 metric methods)
├── jobs.py # JobsClient (create / wait / cancel jobs)
├── progress.py # ProgressBar / create_progress_callback
@@ -86,7 +86,7 @@ src/genflux/
│ ├── job.py # Job / JobProgress / MetricResult
│ └── report.py # Report / ReportSummary / ReportDetails
└── exceptions/
- └── api.py # GenFluxError hierarchy
+ └── api.py # GenfluxError hierarchy
```
## Coding Conventions
@@ -133,6 +133,6 @@ make llms-check # Verify llms.txt is up-to-date
## Optional
-- [Backend API Reference](docs/BACKEND_API_REFERENCE.md): REST API endpoints of the Genflux Platform backend
+- [Backend API Reference](docs/BACKEND_API_REFERENCE.md): REST API endpoints of the GENFLUX Platform backend
- [Test Evaluation Sheet](docs/TEST_EVALUATION_SHEET.md): Test cases and evaluation criteria
- [Local Setup](docs/LOCAL_SETUP.md): Local development environment setup with Docker
diff --git a/pyproject.toml b/pyproject.toml
index 861efa9..debb07e 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -5,7 +5,7 @@ build-backend = "hatchling.build"
[project]
name = "genflux"
version = "0.1.2"
-description = "Python SDK for Genflux API - RAG Evaluation Platform"
+description = "Python SDK for GENFLUX API - RAG Evaluation Platform"
readme = "README.md"
license = "MIT"
license-files = ["LICENSE"]
@@ -15,7 +15,7 @@ dependencies = [
"pydantic>=2.0.0",
"tqdm>=4.66.0",
]
-authors = [{ name = "Genflux Team", email = "genflux-support@elith.jp" }]
+authors = [{ name = "GENFLUX Team", email = "genflux-support@elith.jp" }]
keywords = ["rag", "evaluation", "llm", "ai-safety", "redteam", "policy-check", "genflux"]
classifiers = [
"Programming Language :: Python :: 3",
diff --git a/scripts/generate_api_reference.py b/scripts/generate_api_reference.py
index 08ae035..077d86d 100644
--- a/scripts/generate_api_reference.py
+++ b/scripts/generate_api_reference.py
@@ -619,7 +619,7 @@ def _md_class(info: ClassInfo, *, heading_level: int = 2, num_prefix: str = "")
def _generate_external_reference() -> str:
"""External(SDKユーザー向け)API Reference を生成する."""
# SDK モジュールのインポート
- from genflux.client import GenFlux
+ from genflux.client import Genflux
from genflux.clients.config import ConfigClient
from genflux.clients.reports import ReportsClient
from genflux.evaluation import EvaluationClient
@@ -627,7 +627,7 @@ def _generate_external_reference() -> str:
APIError,
AuthenticationError,
ConfigNotFoundError,
- GenFluxError,
+ GenfluxError,
JobFailedError,
NotFoundError,
RateLimitError,
@@ -670,9 +670,9 @@ def _generate_external_reference() -> str:
-# Genflux Python SDK - API Reference
+# GENFLUX Python SDK - API Reference
-Genflux Python SDK の完全な API リファレンスです。
+GENFLUX Python SDK の完全な API リファレンスです。
このドキュメントはソースコードの docstring・型ヒントから**自動生成**されています。
> ⚠️ **このファイルは自動生成物です。直接編集しないでください。**
@@ -685,7 +685,7 @@ def _generate_external_reference() -> str:
- [1. 概要](#1-概要)
- [2. クライアント](#2-クライアント)
- - [2.1 GenFlux](#21-genflux)
+ - [2.1 Genflux](#21-genflux)
- [2.2 ConfigClient](#22-configclient)
- [2.3 JobsClient](#23-jobsclient)
- [2.4 ReportsClient](#24-reportsclient)
@@ -703,7 +703,7 @@ def _generate_external_reference() -> str:
sections.append("## 2. クライアント")
sections.append("")
- genflux_info = _extract_class_info(GenFlux, include_inherited=False)
+ genflux_info = _extract_class_info(Genflux, include_inherited=False)
sections.append(_md_class(genflux_info, heading_level=3, num_prefix="2.1"))
config_client_info = _extract_class_info(ConfigClient, include_inherited=False)
@@ -791,7 +791,7 @@ def _generate_external_reference() -> str:
def _generate_developer_reference() -> str:
"""Developer(開発者向け)API Reference を生成する."""
- from genflux.client import GenFlux
+ from genflux.client import Genflux
from genflux.clients.base import BaseClient
from genflux.clients.config import ConfigClient
from genflux.clients.reports import ReportsClient
@@ -800,7 +800,7 @@ def _generate_developer_reference() -> str:
APIError,
AuthenticationError,
ConfigNotFoundError,
- GenFluxError,
+ GenfluxError,
JobFailedError,
NotFoundError,
RateLimitError,
@@ -843,7 +843,7 @@ def _generate_developer_reference() -> str:
-# Genflux Python SDK - Developer API Reference
+# GENFLUX Python SDK - Developer API Reference
開発者向けの詳細な API リファレンスです。
内部クラス・プライベートメソッドも含みます。
@@ -854,7 +854,7 @@ def _generate_developer_reference() -> str:
## 📋 目次
-- [Genflux クライアント](#genflux-1)
+- [GENFLUX クライアント](#genflux-1)
- [BaseClient(内部)](#baseclient)
- [ConfigClient](#configclient)
- [JobsClient](#jobsclient)
@@ -866,11 +866,11 @@ def _generate_developer_reference() -> str:
---""")
- # Genflux (include private)
+ # GENFLUX (include private)
sections.append("## クライアント")
sections.append("")
- genflux_info = _extract_class_info(GenFlux, include_private=True)
+ genflux_info = _extract_class_info(Genflux, include_private=True)
sections.append(_md_class(genflux_info, heading_level=3))
# BaseClient (internal)
@@ -919,7 +919,7 @@ def _generate_developer_reference() -> str:
sections.append("")
exception_classes = [
- GenFluxError, APIError, AuthenticationError, NotFoundError,
+ GenfluxError, APIError, AuthenticationError, NotFoundError,
ValidationError, TimeoutError, JobFailedError, RateLimitError,
ConfigNotFoundError, ResourceNotFoundError,
]
@@ -969,9 +969,9 @@ def _generate_developer_reference() -> str:
## 1. 概要
```python
-from genflux import GenFlux
+from genflux import Genflux
-client = GenFlux() # GENFLUX_API_KEY 環境変数を使用
+client = Genflux() # GENFLUX_API_KEY 環境変数を使用
evaluator = client.evaluation()
result = evaluator.faithfulness(
@@ -986,14 +986,14 @@ def _generate_developer_reference() -> str:
```mermaid
graph TB
- User["Your Code"] --> GF["Genflux Client"]
+ User["Your Code"] --> GF["GENFLUX Client"]
GF --> CC["client.configs
ConfigClient"]
GF --> JC["client.jobs
JobsClient"]
GF --> RC["client.reports
ReportsClient"]
GF --> EC["client.evaluation()
EvaluationClient"]
- CC --> API["Genflux Backend API"]
+ CC --> API["GENFLUX Backend API"]
JC --> API
RC --> API
EC --> API
@@ -1010,7 +1010,7 @@ def _generate_developer_reference() -> str:
| クライアント | アクセス方法 | 説明 |
|---|---|---|
-| [`GenFlux`](#genflux-1) | `GenFlux()` | メインクライアント(認証・サブクライアント管理) |
+| [`Genflux`](#genflux-1) | `Genflux()` | メインクライアント(認証・サブクライアント管理) |
| [`EvaluationClient`](#evaluationclient) | `client.evaluation()` | 8 種類のメトリックによる評価実行 |
| [`ConfigClient`](#configclient) | `client.configs` | RAG API 設定の CRUD |
| [`JobsClient`](#jobsclient) | `client.jobs` | 非同期ジョブの作成・監視・キャンセル |
@@ -1035,22 +1035,22 @@ def _generate_developer_reference() -> str:
_EXCEPTIONS_SECTION = """\
## 4. 例外
-すべての例外は `GenFluxError` を基底クラスとしています。
+すべての例外は `GenfluxError` を基底クラスとしています。
### 4.1 例外一覧
| 例外 | 継承元 | HTTP ステータス | 説明 |
|---|---|---|---|
-| `GenFluxError` | `Exception` | — | 基底例外クラス |
-| `APIError` | `GenFluxError` | — | API リクエスト失敗(基底) |
+| `GenfluxError` | `Exception` | — | 基底例外クラス |
+| `APIError` | `GenfluxError` | — | API リクエスト失敗(基底) |
| `AuthenticationError` | `APIError` | 401 | API Key が無効または未設定 |
| `NotFoundError` | `APIError` | 404 | リソースが見つからない |
| `ValidationError` | `APIError` | 400, 422 | リクエストパラメータが不正 |
| `RateLimitError` | `APIError` | 429 | レート制限超過 |
-| `TimeoutError` | `GenFluxError` | — | ジョブのタイムアウト |
-| `JobFailedError` | `GenFluxError` | — | ジョブ実行の失敗 |
-| `ConfigNotFoundError` | `GenFluxError` | — | 指定した Config が存在しない |
-| `ResourceNotFoundError` | `GenFluxError` | — | リソースが見つからない |
+| `TimeoutError` | `GenfluxError` | — | ジョブのタイムアウト |
+| `JobFailedError` | `GenfluxError` | — | ジョブ実行の失敗 |
+| `ConfigNotFoundError` | `GenfluxError` | — | 指定した Config が存在しない |
+| `ResourceNotFoundError` | `GenfluxError` | — | リソースが見つからない |
> **Note:** `APIError` 系は HTTP レスポンスに起因する例外です。`status_code` 属性でステータスコードを取得できます。
> `TimeoutError` / `JobFailedError` はジョブ実行に起因する例外で、HTTP ステータスコードはありません。
@@ -1058,7 +1058,7 @@ def _generate_developer_reference() -> str:
### 4.2 例外ハンドリング
```python
-from genflux import GenFlux
+from genflux import Genflux
from genflux.exceptions import (
AuthenticationError,
RateLimitError,
@@ -1066,7 +1066,7 @@ def _generate_developer_reference() -> str:
JobFailedError,
)
-client = GenFlux()
+client = Genflux()
evaluator = client.evaluation()
try:
@@ -1123,7 +1123,7 @@ def _load_openai_client() -> Any:
def _extract_source_summary() -> str:
"""ソースコードから関数シグネチャ・docstring を抽出し、ground truth を作成する."""
- from genflux.client import GenFlux
+ from genflux.client import Genflux
from genflux.clients.config import ConfigClient
from genflux.clients.reports import ReportsClient
from genflux.evaluation import EvaluationClient
@@ -1134,7 +1134,7 @@ def _extract_source_summary() -> str:
summary_parts: list[str] = []
classes = [
- GenFlux, ConfigClient, JobsClient, ReportsClient, EvaluationClient,
+ Genflux, ConfigClient, JobsClient, ReportsClient, EvaluationClient,
Config, ConfigCreate, ConfigUpdate, Job, JobProgress, MetricResult,
]
@@ -1266,7 +1266,7 @@ def _pass1_enrich(client: Any, raw_md: str, source_summary: str) -> str:
- 型名、パラメータ名、クラス名は絶対に変更しない
- 存在しない機能やパラメータを追加しない(ソースにないものは書かない)
- 新しい見出し(## や ### )を追加しない。既存の見出し構造をそのまま維持する
-- 見出しの通し番号は大分類(## 2. クライアント)とクラス(### 2.1 GenFlux)の2階層まで。メソッドの見出し(####)には番号を付けない
+- 見出しの通し番号は大分類(## 2. クライアント)とクラス(### 2.1 Genflux)の2階層まで。メソッドの見出し(####)には番号を付けない
- 出力は改善後の Markdown セクションをそのまま返すこと(説明や前置きは不要)"""
sections = _split_md_sections(raw_md)
@@ -1490,7 +1490,7 @@ def _enrich_with_llm(raw_md: str, *, mode: str = "external", use_cache: bool = T
def main() -> int:
"""メインエントリーポイント."""
parser = argparse.ArgumentParser(
- description="Genflux SDK API Reference 自動生成",
+ description="GENFLUX SDK API Reference 自動生成",
)
parser.add_argument(
"--mode",
diff --git a/scripts/generate_llms_txt.py b/scripts/generate_llms_txt.py
index 4a9d922..bf87e63 100644
--- a/scripts/generate_llms_txt.py
+++ b/scripts/generate_llms_txt.py
@@ -175,7 +175,7 @@ class SDKInfo:
def _collect_sdk_info() -> SDKInfo:
"""SDK の全情報を収集する."""
import genflux as gf
- from genflux.client import GenFlux
+ from genflux.client import Genflux
from genflux.clients.config import ConfigClient
from genflux.clients.reports import ReportsClient
from genflux.evaluation import EvaluationClient
@@ -183,7 +183,7 @@ def _collect_sdk_info() -> SDKInfo:
APIError,
AuthenticationError,
ConfigNotFoundError,
- GenFluxError,
+ GenfluxError,
JobFailedError,
NotFoundError,
RateLimitError,
@@ -209,7 +209,7 @@ def _collect_sdk_info() -> SDKInfo:
# --- Public API ---
public_api = list(gf.__all__)
- # --- Genflux Client ---
+ # --- GENFLUX Client ---
def _client_methods(cls: type) -> list[tuple[str, str, str]]:
methods = []
for name, obj in _get_public_methods(cls):
@@ -222,8 +222,8 @@ def _client_methods(cls: type) -> list[tuple[str, str, str]]:
methods.append((name, sig, summary))
return methods
- genflux_summary = _get_first_line(inspect.getdoc(GenFlux))
- genflux_init_sig = _get_signature_str(GenFlux, "GenFlux")
+ genflux_summary = _get_first_line(inspect.getdoc(Genflux))
+ genflux_init_sig = _get_signature_str(Genflux, "Genflux")
# --- Evaluation metrics ---
eval_cls_methods = _client_methods(EvaluationClient)
@@ -248,7 +248,7 @@ def _client_methods(cls: type) -> list[tuple[str, str, str]]:
# --- Exceptions ---
exception_classes: list[type] = [
- GenFluxError, APIError, AuthenticationError, NotFoundError,
+ GenfluxError, APIError, AuthenticationError, NotFoundError,
ValidationError, TimeoutError, JobFailedError, RateLimitError,
ConfigNotFoundError, ResourceNotFoundError,
]
@@ -262,7 +262,7 @@ def _client_methods(cls: type) -> list[tuple[str, str, str]]:
public_api=public_api,
genflux_summary=genflux_summary,
genflux_init_sig=genflux_init_sig,
- genflux_methods=_client_methods(GenFlux),
+ genflux_methods=_client_methods(Genflux),
eval_methods=eval_cls_methods,
config_methods=_client_methods(ConfigClient),
jobs_methods=_client_methods(JobsClient),
@@ -334,12 +334,12 @@ def _generate_llms_txt(info: SDKInfo) -> str:
lines: list[str] = []
# ── H1 (required) ──
- lines.append("# Genflux Python SDK")
+ lines.append("# GENFLUX Python SDK")
lines.append("")
# ── Blockquote (summary) ──
lines.append(
- "> Genflux Python SDK は RAG(Retrieval-Augmented Generation)システムの"
+ "> GENFLUX Python SDK は RAG(Retrieval-Augmented Generation)システムの"
"**評価・セキュリティテスト・ポリシーチェック**を Python から実行するための"
"公式クライアントライブラリです。"
"同期的な API の裏で非同期 Job をポーリングし、結果を返すアーキテクチャを採用しています。"
@@ -350,9 +350,9 @@ def _generate_llms_txt(info: SDKInfo) -> str:
lines.append("## Quick Start")
lines.append("")
lines.append("```python")
- lines.append("from genflux import GenFlux")
+ lines.append("from genflux import Genflux")
lines.append("")
- lines.append("client = GenFlux(api_key=\"pk_xxx\") # or set GENFLUX_API_KEY env var")
+ lines.append("client = Genflux(api_key=\"pk_xxx\") # or set GENFLUX_API_KEY env var")
lines.append("evaluator = client.evaluation(config_id=\"cfg_123\") # config_id is optional")
lines.append("result = evaluator.faithfulness(")
lines.append(" question=\"What is Python?\",")
@@ -369,7 +369,7 @@ def _generate_llms_txt(info: SDKInfo) -> str:
lines.append("The core execution flow is:")
lines.append("")
lines.append("```")
- lines.append("GenFlux(api_key) → .evaluation(config_id) → EvaluationClient")
+ lines.append("Genflux(api_key) → .evaluation(config_id) → EvaluationClient")
lines.append(" → EvaluationClient.faithfulness(q, a, contexts)")
lines.append(" → JobsClient.create() → Backend API (Job Queue)")
lines.append(" → JobsClient.wait() → Poll until completed")
@@ -440,7 +440,7 @@ def _generate_llms_txt(info: SDKInfo) -> str:
lines.append("```")
lines.append("src/genflux/")
lines.append("├── __init__.py # Public API (__all__) — single source of truth")
- lines.append("├── client.py # Genflux main client (entry point)")
+ lines.append("├── client.py # GENFLUX main client (entry point)")
lines.append("├── evaluation.py # EvaluationClient (12 metric methods)")
lines.append("├── jobs.py # JobsClient (create / wait / cancel jobs)")
lines.append("├── progress.py # ProgressBar / create_progress_callback")
@@ -453,7 +453,7 @@ def _generate_llms_txt(info: SDKInfo) -> str:
lines.append("│ ├── job.py # Job / JobProgress / MetricResult")
lines.append("│ └── report.py # Report / ReportSummary / ReportDetails")
lines.append("└── exceptions/")
- lines.append(" └── api.py # GenFluxError hierarchy")
+ lines.append(" └── api.py # GenfluxError hierarchy")
lines.append("```")
lines.append("")
@@ -527,7 +527,7 @@ def _generate_llms_txt(info: SDKInfo) -> str:
lines.append("")
lines.append(
"- [Backend API Reference](docs/BACKEND_API_REFERENCE.md):"
- " REST API endpoints of the Genflux Platform backend"
+ " REST API endpoints of the GENFLUX Platform backend"
)
lines.append(
"- [Test Evaluation Sheet](docs/TEST_EVALUATION_SHEET.md):"
@@ -551,12 +551,12 @@ def _generate_llms_full_txt(info: SDKInfo) -> str:
lines: list[str] = []
# ── H1 ──
- lines.append("# Genflux Python SDK — Full Context for LLMs")
+ lines.append("# GENFLUX Python SDK — Full Context for LLMs")
lines.append("")
# ── Blockquote ──
lines.append(
- "> Genflux Python SDK は RAG(Retrieval-Augmented Generation)システムの"
+ "> GENFLUX Python SDK は RAG(Retrieval-Augmented Generation)システムの"
"**評価・セキュリティテスト・ポリシーチェック**を Python から実行するための"
"公式クライアントライブラリです。"
"このファイルには LLM がコードを生成・修正するために必要な全 API 情報が含まれています。"
@@ -567,10 +567,10 @@ def _generate_llms_full_txt(info: SDKInfo) -> str:
lines.append("## Quick Start")
lines.append("")
lines.append("```python")
- lines.append("from genflux import GenFlux")
+ lines.append("from genflux import Genflux")
lines.append("")
lines.append("# Initialize (GENFLUX_API_KEY env var or explicit)")
- lines.append("client = GenFlux(api_key=\"pk_xxx\")")
+ lines.append("client = Genflux(api_key=\"pk_xxx\")")
lines.append("")
lines.append("# Simple evaluation")
lines.append("evaluator = client.evaluation(config_id=\"cfg_123\") # config_id optional")
@@ -604,7 +604,7 @@ def _generate_llms_full_txt(info: SDKInfo) -> str:
lines.append("## Architecture")
lines.append("")
lines.append("```")
- lines.append("GenFlux(api_key)")
+ lines.append("Genflux(api_key)")
lines.append("├── .evaluation(config_id) → EvaluationClient")
lines.append("│ ├── .faithfulness(q, a, contexts) → MetricResult")
lines.append("│ ├── .answer_relevancy(q, a) → MetricResult")
@@ -653,7 +653,7 @@ def _generate_llms_full_txt(info: SDKInfo) -> str:
lines.append("")
lines.append("```python")
# Group them
- clients = [n for n in info.public_api if n.endswith("Client") or n == "GenFlux"]
+ clients = [n for n in info.public_api if n.endswith("Client") or n == "Genflux"]
_util_names = ("ProgressBar", "create_progress_callback")
models = [
n for n in info.public_api
@@ -671,8 +671,8 @@ def _generate_llms_full_txt(info: SDKInfo) -> str:
lines.append("```")
lines.append("")
- # ── Genflux Client ──
- lines.append("## Genflux Client")
+ # ── GENFLUX Client ──
+ lines.append("## GENFLUX Client")
lines.append("")
lines.append("```python")
lines.append("@dataclass")
@@ -791,7 +791,7 @@ def _generate_llms_full_txt(info: SDKInfo) -> str:
lines.append("")
lines.append("```")
lines.append("Exception")
- lines.append("└── GenFluxError (base)")
+ lines.append("└── GenfluxError (base)")
lines.append(" ├── APIError (status_code, message, details)")
lines.append(" │ ├── AuthenticationError (401)")
lines.append(" │ ├── NotFoundError (404)")
@@ -841,7 +841,7 @@ def _generate_llms_full_txt(info: SDKInfo) -> str:
lines.append("genflux-python-sdk/")
lines.append("├── src/genflux/ # SDK source")
lines.append("│ ├── __init__.py # Public API (__all__)")
- lines.append("│ ├── client.py # Genflux main client")
+ lines.append("│ ├── client.py # GENFLUX main client")
lines.append("│ ├── evaluation.py # EvaluationClient")
lines.append("│ ├── jobs.py # JobsClient")
lines.append("│ ├── progress.py # Progress display utilities")
@@ -931,7 +931,7 @@ def _check_diff(path: Path, new_content: str) -> bool:
def main() -> int:
"""メインエントリーポイント."""
parser = argparse.ArgumentParser(
- description="Generate llms.txt and llms-full.txt for the Genflux Python SDK",
+ description="Generate llms.txt and llms-full.txt for the GENFLUX Python SDK",
)
parser.add_argument(
"--check",
diff --git a/src/genflux/__init__.py b/src/genflux/__init__.py
index 381b42a..9475ac6 100644
--- a/src/genflux/__init__.py
+++ b/src/genflux/__init__.py
@@ -1,10 +1,10 @@
-"""GenFlux Python SDK.
+"""GENFLUX Python SDK.
-A Python SDK for interacting with the GenFlux API.
+A Python SDK for interacting with the GENFLUX API.
"""
# Main client
-from genflux.client import GenFlux
+from genflux.client import Genflux
# Specialized clients
from genflux.clients.config import ConfigClient
@@ -16,7 +16,7 @@
APIError,
AuthenticationError,
ConfigNotFoundError,
- GenFluxError,
+ GenfluxError,
JobFailedError,
NotFoundError,
RateLimitError,
@@ -52,7 +52,7 @@
__all__ = [
# Main Client
- "GenFlux",
+ "Genflux",
# Specialized Clients
"ConfigClient",
"EvaluationClient",
@@ -79,7 +79,7 @@
"ProgressBar",
"create_progress_callback",
# Exceptions
- "GenFluxError",
+ "GenfluxError",
"APIError",
"AuthenticationError",
"NotFoundError",
diff --git a/src/genflux/client.py b/src/genflux/client.py
index 343f903..ad3211c 100644
--- a/src/genflux/client.py
+++ b/src/genflux/client.py
@@ -1,4 +1,4 @@
-"""GenFlux Client module."""
+"""GENFLUX Client module."""
import os
from dataclasses import dataclass, field
@@ -16,28 +16,28 @@
@dataclass
-class GenFlux:
- """GenFlux APIクライアント。
+class Genflux:
+ """GENFLUX APIクライアント。
Args:
api_key: API key for authentication. If not provided, uses GENFLUX_API_KEY env var.
- base_url: Base URL for the GenFlux API. If not provided, uses GENFLUX_API_BASE_URL env var
+ base_url: Base URL for the GENFLUX API. If not provided, uses GENFLUX_API_BASE_URL env var
or constructs from environment setting.
environment: Environment name ("local", "dev", or "prod"). Uses GENFLUX_ENVIRONMENT env var if not provided.
Defaults to "prod".
timeout (float): Request timeout in seconds (default: 60.0)
Example:
- >>> from genflux import GenFlux
+ >>> from genflux import Genflux
>>>
>>> # Production (default)
- >>> client = GenFlux(api_key="pk_xxx")
+ >>> client = Genflux(api_key="pk_xxx")
>>>
>>> # Development
- >>> client = GenFlux(api_key="pk_xxx", environment="dev")
+ >>> client = Genflux(api_key="pk_xxx", environment="dev")
>>>
>>> # Local development
- >>> client = GenFlux(api_key="dev_test_key", environment="local")
+ >>> client = Genflux(api_key="dev_test_key", environment="local")
"""
api_key: str | None = field(default=None, repr=False)
@@ -80,7 +80,7 @@ def __post_init__(self) -> None:
# New ConfigClient uses BaseClient (independent HTTP client)
self.configs = ConfigClient(api_key=self.api_key, base_url=self.base_url, timeout=int(self.timeout))
self.reports = ReportsClient(api_key=self.api_key, base_url=self.base_url, timeout=int(self.timeout))
- # Old-style clients use GenFlux instance
+ # Old-style clients use Genflux instance
self.jobs = JobsClient(self)
def evaluation(self, config_id: str | None = None) -> EvaluationClient:
@@ -94,7 +94,7 @@ def evaluation(self, config_id: str | None = None) -> EvaluationClient:
Example:
>>> # With explicit config
- >>> client = GenFlux(api_key="pk_xxx")
+ >>> client = Genflux(api_key="pk_xxx")
>>> evaluator = client.evaluation(config_id="config_123")
>>> result = evaluator.faithfulness(
... question="What is Python?",
diff --git a/src/genflux/clients/__init__.py b/src/genflux/clients/__init__.py
index a67fec1..7b3e20f 100644
--- a/src/genflux/clients/__init__.py
+++ b/src/genflux/clients/__init__.py
@@ -1,4 +1,4 @@
-"""API clients for GenFlux SDK."""
+"""API clients for GENFLUX SDK."""
from genflux.clients.config import ConfigClient
diff --git a/src/genflux/clients/base.py b/src/genflux/clients/base.py
index ef50b39..dec88f6 100644
--- a/src/genflux/clients/base.py
+++ b/src/genflux/clients/base.py
@@ -1,4 +1,4 @@
-"""Base HTTP client for GenFlux API."""
+"""Base HTTP client for GENFLUX API."""
import os
from typing import Any
@@ -18,7 +18,7 @@
class BaseClient:
- """GenFlux API用の基底HTTPクライアント。"""
+ """GENFLUX API用の基底HTTPクライアント。"""
def __init__(
self,
diff --git a/src/genflux/clients/config.py b/src/genflux/clients/config.py
index 64be138..56a2a29 100644
--- a/src/genflux/clients/config.py
+++ b/src/genflux/clients/config.py
@@ -1,4 +1,4 @@
-"""Config management client for GenFlux SDK."""
+"""Config management client for GENFLUX SDK."""
from uuid import UUID
diff --git a/src/genflux/clients/reports.py b/src/genflux/clients/reports.py
index bedfeaf..d46c5cf 100644
--- a/src/genflux/clients/reports.py
+++ b/src/genflux/clients/reports.py
@@ -1,4 +1,4 @@
-"""Reports client for GenFlux SDK."""
+"""Reports client for GENFLUX SDK."""
from typing import Literal
from uuid import UUID
@@ -32,8 +32,8 @@ def get( # type: ignore[override]
ValidationError: If report not ready (job not completed)
Example:
- >>> from genflux import GenFlux
- >>> client = GenFlux(api_key="genflux_xxx")
+ >>> from genflux import Genflux
+ >>> client = Genflux(api_key="genflux_xxx")
>>>
>>> # Get summary report
>>> report = client.reports.get(
diff --git a/src/genflux/constants.py b/src/genflux/constants.py
index b52e1be..3a1a95e 100644
--- a/src/genflux/constants.py
+++ b/src/genflux/constants.py
@@ -1,6 +1,6 @@
-"""Shared constants for GenFlux SDK."""
+"""Shared constants for GENFLUX SDK."""
-# Environment-specific API base URLs (used by GenFlux and BaseClient)
+# Environment-specific API base URLs (used by Genflux and BaseClient)
ENV_URLS = {
"local": "http://localhost:9000/api/v1/external",
"dev": "https://api.dev.platform.genflux.jp/api/v1/external",
diff --git a/src/genflux/evaluation.py b/src/genflux/evaluation.py
index f00d9de..0cbaeea 100644
--- a/src/genflux/evaluation.py
+++ b/src/genflux/evaluation.py
@@ -1,4 +1,4 @@
-"""Evaluation Client for GenFlux SDK."""
+"""Evaluation Client for GENFLUX SDK."""
import logging
from typing import Callable
@@ -70,7 +70,7 @@ def evaluate(
ValidationError: If request validation fails
Example:
- >>> client = GenFlux(api_key="pk_xxx")
+ >>> client = Genflux(api_key="pk_xxx")
>>> evaluator = client.evaluation(config_id="config_123")
>>>
>>> result = evaluator.evaluate(
diff --git a/src/genflux/exceptions/__init__.py b/src/genflux/exceptions/__init__.py
index 39c234d..4c3adc8 100644
--- a/src/genflux/exceptions/__init__.py
+++ b/src/genflux/exceptions/__init__.py
@@ -1,10 +1,10 @@
-"""Custom exceptions for GenFlux SDK."""
+"""Custom exceptions for GENFLUX SDK."""
from genflux.exceptions.api import (
APIError,
AuthenticationError,
ConfigNotFoundError,
- GenFluxError,
+ GenfluxError,
JobFailedError,
NotFoundError,
RateLimitError,
@@ -14,7 +14,7 @@
)
__all__ = [
- "GenFluxError",
+ "GenfluxError",
"APIError",
"AuthenticationError",
"NotFoundError",
diff --git a/src/genflux/exceptions/api.py b/src/genflux/exceptions/api.py
index dc9be14..f5d97b0 100644
--- a/src/genflux/exceptions/api.py
+++ b/src/genflux/exceptions/api.py
@@ -1,4 +1,4 @@
-"""Custom exceptions for GenFlux SDK."""
+"""Custom exceptions for GENFLUX SDK."""
def _extract_resource_from_url_path(
@@ -72,13 +72,13 @@ def _parse_not_found_from_response(
return resource, resource_id, message
-class GenFluxError(Exception):
- """GenFlux SDKの基底例外クラス。"""
+class GenfluxError(Exception):
+ """GENFLUX SDKの基底例外クラス。"""
pass
-class APIError(GenFluxError):
+class APIError(GenfluxError):
"""APIリクエストが失敗しました。"""
def __init__(self, status_code: int, message: str, details: dict | None = None):
@@ -144,7 +144,7 @@ def __init__(self, message: str, details: dict | None = None):
super().__init__(422, message, details)
-class TimeoutError(GenFluxError):
+class TimeoutError(GenfluxError):
"""操作がタイムアウトしました。"""
def __init__(
@@ -182,7 +182,7 @@ def __init__(
super().__init__(msg)
-class JobFailedError(GenFluxError):
+class JobFailedError(GenfluxError):
"""ジョブの実行に失敗しました。"""
def __init__(
@@ -224,7 +224,7 @@ def __init__(
self.retry_after = retry_after
-class ConfigNotFoundError(GenFluxError):
+class ConfigNotFoundError(GenfluxError):
"""設定が見つかりません。"""
def __init__(self, config_id: str | None = None):
@@ -242,7 +242,7 @@ def __init__(self, config_id: str | None = None):
)
-class ResourceNotFoundError(GenFluxError):
+class ResourceNotFoundError(GenfluxError):
"""汎用リソースが見つからないエラー。"""
def __init__(self, resource_type: str, resource_id: str):
diff --git a/src/genflux/jobs.py b/src/genflux/jobs.py
index afbea10..808df22 100644
--- a/src/genflux/jobs.py
+++ b/src/genflux/jobs.py
@@ -1,4 +1,4 @@
-"""Jobs Client for GenFlux SDK."""
+"""Jobs Client for GENFLUX SDK."""
import logging
import time
@@ -22,7 +22,7 @@
})
if TYPE_CHECKING:
- from genflux import GenFlux
+ from genflux import Genflux
logger = logging.getLogger(__name__)
@@ -30,11 +30,11 @@
class JobsClient:
"""ジョブ(実行)管理用クライアント。"""
- def __init__(self, client: "GenFlux"):
+ def __init__(self, client: "Genflux"):
"""Initialize JobsClient.
Args:
- client: Parent GenFlux client
+ client: Parent Genflux client
"""
self._client = client
diff --git a/src/genflux/models/__init__.py b/src/genflux/models/__init__.py
index d7a5999..ed4e79d 100644
--- a/src/genflux/models/__init__.py
+++ b/src/genflux/models/__init__.py
@@ -1,4 +1,4 @@
-"""Data models for GenFlux SDK."""
+"""Data models for GENFLUX SDK."""
from genflux.models.config import (
Config,
diff --git a/src/genflux/models/config.py b/src/genflux/models/config.py
index 3c68698..ce5b1d3 100644
--- a/src/genflux/models/config.py
+++ b/src/genflux/models/config.py
@@ -1,4 +1,4 @@
-"""Config data models for GenFlux SDK."""
+"""Config data models for GENFLUX SDK."""
from datetime import datetime
from typing import Any
diff --git a/src/genflux/models/job.py b/src/genflux/models/job.py
index 8a3e8c4..11d922c 100644
--- a/src/genflux/models/job.py
+++ b/src/genflux/models/job.py
@@ -1,4 +1,4 @@
-"""Job-related data models for GenFlux SDK."""
+"""Job-related data models for GENFLUX SDK."""
from dataclasses import dataclass
from datetime import datetime
diff --git a/src/genflux/models/report.py b/src/genflux/models/report.py
index d3ec350..01eb6f1 100644
--- a/src/genflux/models/report.py
+++ b/src/genflux/models/report.py
@@ -1,4 +1,4 @@
-"""Report models for GenFlux SDK."""
+"""Report models for GENFLUX SDK."""
from datetime import datetime
from typing import Literal
diff --git a/src/genflux/progress.py b/src/genflux/progress.py
index 39630dc..1df12a0 100644
--- a/src/genflux/progress.py
+++ b/src/genflux/progress.py
@@ -1,4 +1,4 @@
-"""Progress display utilities for GenFlux SDK."""
+"""Progress display utilities for GENFLUX SDK."""
import sys
from collections.abc import Callable
@@ -93,10 +93,10 @@ def create_progress_callback(enable: bool = True) -> Callable[[Job], None]:
Callback function for job.wait()
Example:
- >>> from genflux import GenFlux
+ >>> from genflux import Genflux
>>> from genflux.progress import create_progress_callback
>>>
- >>> client = GenFlux(api_key="pk_xxx")
+ >>> client = Genflux(api_key="pk_xxx")
>>> job = client.jobs.create(...)
>>>
>>> # With progress bar
diff --git a/test_quickstart.py b/test_quickstart.py
index 25ee88e..fd6f17e 100644
--- a/test_quickstart.py
+++ b/test_quickstart.py
@@ -12,7 +12,7 @@
def main():
"""メイン処理."""
try:
- from genflux import GenFlux
+ from genflux import Genflux
print("="*70)
print(" QUICKSTART動作確認テスト")
@@ -20,7 +20,7 @@ def main():
# クライアント初期化
print("\n1. クライアント初期化...")
- client = GenFlux(base_url="http://localhost:9000/api/v1/external")
+ client = Genflux(base_url="http://localhost:9000/api/v1/external")
print(" ✅ クライアント初期化成功")
# Config一覧取得
diff --git a/test_setup.py b/test_setup.py
index 1947039..accab13 100644
--- a/test_setup.py
+++ b/test_setup.py
@@ -108,11 +108,11 @@ def check_sdk_basic_usage():
print_section("SDK 基本動作確認")
try:
- from genflux import GenFlux
+ from genflux import Genflux
# クライアント初期化
- client = GenFlux(base_url="http://localhost:9000/api/v1/external")
- print("✅ GenFlux クライアントを初期化しました")
+ client = Genflux(base_url="http://localhost:9000/api/v1/external")
+ print("✅ GENFLUX クライアントを初期化しました")
# Config 一覧取得を試行
try:
@@ -143,7 +143,7 @@ def check_sdk_basic_usage():
def main():
"""メイン処理"""
print("\n" + "="*70)
- print(" GenFlux SDK セットアップ確認")
+ print(" GENFLUX SDK セットアップ確認")
print("="*70)
results = []
diff --git a/tests/test_quick_evaluation.py b/tests/test_quick_evaluation.py
index 5fa301b..6a10f7e 100644
--- a/tests/test_quick_evaluation.py
+++ b/tests/test_quick_evaluation.py
@@ -4,7 +4,7 @@
import sys
import time
-from genflux import GenFlux
+from genflux import Genflux
# Set environment - 環境変数から取得、なければデフォルト値
if "GENFLUX_API_KEY" not in os.environ:
@@ -19,9 +19,9 @@ def test_quick_evaluation():
print("=" * 60)
# Initialize client
- print("\n📡 Initializing GenFlux client...")
+ print("\n📡 Initializing GENFLUX client...")
print(f" Base URL: {BASE_URL}")
- client = GenFlux(base_url=BASE_URL)
+ client = Genflux(base_url=BASE_URL)
print("✅ Client initialized")
# Use existing config (first one from list)
diff --git a/tests/test_sdk_simple.py b/tests/test_sdk_simple.py
index 2a75465..decb077 100644
--- a/tests/test_sdk_simple.py
+++ b/tests/test_sdk_simple.py
@@ -7,7 +7,7 @@
import os
import sys
-from genflux import GenFlux
+from genflux import Genflux
def test_api_health():
@@ -31,8 +31,8 @@ def test_external_api_endpoints():
# APIキーを環境変数から取得
api_key = os.getenv("GENFLUX_API_KEY", "dev_test_key_12345")
- # GenFluxクライアントを使用してAPIエンドポイントをテスト
- client = GenFlux(api_key=api_key, base_url="http://localhost:9000/api/v1/external")
+ # GENFLUXクライアントを使用してAPIエンドポイントをテスト
+ client = Genflux(api_key=api_key, base_url="http://localhost:9000/api/v1/external")
# GET /configs
print("\n1️⃣ Testing GET /configs...")
@@ -61,7 +61,7 @@ def test_sdk_client():
print("🧪 Test 3: SDK Client Initialization")
print("=" * 60)
- client = GenFlux(
+ client = Genflux(
api_key="test_key",
base_url="http://localhost:9000/api/v1/external",
)
@@ -78,7 +78,7 @@ def test_sdk_client():
def main():
"""メインテスト実行"""
print("\n" + "=" * 60)
- print("🚀 GenFlux SDK 簡易テスト")
+ print("🚀 GENFLUX SDK 簡易テスト")
print("=" * 60)
print()
diff --git a/uv.lock b/uv.lock
index 42f4c4b..3c934d0 100644
--- a/uv.lock
+++ b/uv.lock
@@ -1,5 +1,5 @@
version = 1
-revision = 2
+revision = 3
requires-python = ">=3.11"
[[package]]
@@ -94,35 +94,25 @@ sdist = { url = "https://files.pythonhosted.org/packages/eb/56/b1ba7935a17738ae8
wheels = [
{ url = "https://files.pythonhosted.org/packages/b1/b7/1200d354378ef52ec227395d95c2576330fd22a869f7a70e88e1447eb234/cffi-2.0.0-cp311-cp311-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:baf5215e0ab74c16e2dd324e8ec067ef59e41125d3eade2b863d294fd5035c92", size = 209613, upload-time = "2025-09-08T23:22:29.475Z" },
{ url = "https://files.pythonhosted.org/packages/b8/56/6033f5e86e8cc9bb629f0077ba71679508bdf54a9a5e112a3c0b91870332/cffi-2.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:730cacb21e1bdff3ce90babf007d0a0917cc3e6492f336c2f0134101e0944f93", size = 216476, upload-time = "2025-09-08T23:22:31.063Z" },
- { url = "https://files.pythonhosted.org/packages/dc/7f/55fecd70f7ece178db2f26128ec41430d8720f2d12ca97bf8f0a628207d5/cffi-2.0.0-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:6824f87845e3396029f3820c206e459ccc91760e8fa24422f8b0c3d1731cbec5", size = 203374, upload-time = "2025-09-08T23:22:32.507Z" },
- { url = "https://files.pythonhosted.org/packages/84/ef/a7b77c8bdc0f77adc3b46888f1ad54be8f3b7821697a7b89126e829e676a/cffi-2.0.0-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:9de40a7b0323d889cf8d23d1ef214f565ab154443c42737dfe52ff82cf857664", size = 202597, upload-time = "2025-09-08T23:22:34.132Z" },
{ url = "https://files.pythonhosted.org/packages/d7/91/500d892b2bf36529a75b77958edfcd5ad8e2ce4064ce2ecfeab2125d72d1/cffi-2.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8941aaadaf67246224cee8c3803777eed332a19d909b47e29c9842ef1e79ac26", size = 215574, upload-time = "2025-09-08T23:22:35.443Z" },
{ url = "https://files.pythonhosted.org/packages/44/64/58f6255b62b101093d5df22dcb752596066c7e89dd725e0afaed242a61be/cffi-2.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:a05d0c237b3349096d3981b727493e22147f934b20f6f125a3eba8f994bec4a9", size = 218971, upload-time = "2025-09-08T23:22:36.805Z" },
{ url = "https://files.pythonhosted.org/packages/ab/49/fa72cebe2fd8a55fbe14956f9970fe8eb1ac59e5df042f603ef7c8ba0adc/cffi-2.0.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:94698a9c5f91f9d138526b48fe26a199609544591f859c870d477351dc7b2414", size = 211972, upload-time = "2025-09-08T23:22:38.436Z" },
{ url = "https://files.pythonhosted.org/packages/0b/28/dd0967a76aab36731b6ebfe64dec4e981aff7e0608f60c2d46b46982607d/cffi-2.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:5fed36fccc0612a53f1d4d9a816b50a36702c28a2aa880cb8a122b3466638743", size = 217078, upload-time = "2025-09-08T23:22:39.776Z" },
{ url = "https://files.pythonhosted.org/packages/ff/df/a4f0fbd47331ceeba3d37c2e51e9dfc9722498becbeec2bd8bc856c9538a/cffi-2.0.0-cp312-cp312-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:21d1152871b019407d8ac3985f6775c079416c282e431a4da6afe7aefd2bccbe", size = 212529, upload-time = "2025-09-08T23:22:47.349Z" },
{ url = "https://files.pythonhosted.org/packages/d5/72/12b5f8d3865bf0f87cf1404d8c374e7487dcf097a1c91c436e72e6badd83/cffi-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:b21e08af67b8a103c71a250401c78d5e0893beff75e28c53c98f4de42f774062", size = 220097, upload-time = "2025-09-08T23:22:48.677Z" },
- { url = "https://files.pythonhosted.org/packages/c2/95/7a135d52a50dfa7c882ab0ac17e8dc11cec9d55d2c18dda414c051c5e69e/cffi-2.0.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:1e3a615586f05fc4065a8b22b8152f0c1b00cdbc60596d187c2a74f9e3036e4e", size = 207983, upload-time = "2025-09-08T23:22:50.06Z" },
- { url = "https://files.pythonhosted.org/packages/3a/c8/15cb9ada8895957ea171c62dc78ff3e99159ee7adb13c0123c001a2546c1/cffi-2.0.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:81afed14892743bbe14dacb9e36d9e0e504cd204e0b165062c488942b9718037", size = 206519, upload-time = "2025-09-08T23:22:51.364Z" },
{ url = "https://files.pythonhosted.org/packages/78/2d/7fa73dfa841b5ac06c7b8855cfc18622132e365f5b81d02230333ff26e9e/cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3e17ed538242334bf70832644a32a7aae3d83b57567f9fd60a26257e992b79ba", size = 219572, upload-time = "2025-09-08T23:22:52.902Z" },
{ url = "https://files.pythonhosted.org/packages/07/e0/267e57e387b4ca276b90f0434ff88b2c2241ad72b16d31836adddfd6031b/cffi-2.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3925dd22fa2b7699ed2617149842d2e6adde22b262fcbfada50e3d195e4b3a94", size = 222963, upload-time = "2025-09-08T23:22:54.518Z" },
{ url = "https://files.pythonhosted.org/packages/b6/75/1f2747525e06f53efbd878f4d03bac5b859cbc11c633d0fb81432d98a795/cffi-2.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2c8f814d84194c9ea681642fd164267891702542f028a15fc97d4674b6206187", size = 221361, upload-time = "2025-09-08T23:22:55.867Z" },
{ url = "https://files.pythonhosted.org/packages/b0/1e/d22cc63332bd59b06481ceaac49d6c507598642e2230f201649058a7e704/cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b", size = 212446, upload-time = "2025-09-08T23:23:03.472Z" },
{ url = "https://files.pythonhosted.org/packages/a9/f5/a2c23eb03b61a0b8747f211eb716446c826ad66818ddc7810cc2cc19b3f2/cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b", size = 220101, upload-time = "2025-09-08T23:23:04.792Z" },
- { url = "https://files.pythonhosted.org/packages/f2/7f/e6647792fc5850d634695bc0e6ab4111ae88e89981d35ac269956605feba/cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2", size = 207948, upload-time = "2025-09-08T23:23:06.127Z" },
- { url = "https://files.pythonhosted.org/packages/cb/1e/a5a1bd6f1fb30f22573f76533de12a00bf274abcdc55c8edab639078abb6/cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3", size = 206422, upload-time = "2025-09-08T23:23:07.753Z" },
{ url = "https://files.pythonhosted.org/packages/98/df/0a1755e750013a2081e863e7cd37e0cdd02664372c754e5560099eb7aa44/cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26", size = 219499, upload-time = "2025-09-08T23:23:09.648Z" },
{ url = "https://files.pythonhosted.org/packages/50/e1/a969e687fcf9ea58e6e2a928ad5e2dd88cc12f6f0ab477e9971f2309b57c/cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c", size = 222928, upload-time = "2025-09-08T23:23:10.928Z" },
{ url = "https://files.pythonhosted.org/packages/36/54/0362578dd2c9e557a28ac77698ed67323ed5b9775ca9d3fe73fe191bb5d8/cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b", size = 221302, upload-time = "2025-09-08T23:23:12.42Z" },
{ url = "https://files.pythonhosted.org/packages/d6/43/0e822876f87ea8a4ef95442c3d766a06a51fc5298823f884ef87aaad168c/cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b", size = 220049, upload-time = "2025-09-08T23:23:20.853Z" },
- { url = "https://files.pythonhosted.org/packages/b4/89/76799151d9c2d2d1ead63c2429da9ea9d7aac304603de0c6e8764e6e8e70/cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c", size = 207793, upload-time = "2025-09-08T23:23:22.08Z" },
- { url = "https://files.pythonhosted.org/packages/bb/dd/3465b14bb9e24ee24cb88c9e3730f6de63111fffe513492bf8c808a3547e/cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef", size = 206300, upload-time = "2025-09-08T23:23:23.314Z" },
{ url = "https://files.pythonhosted.org/packages/47/d9/d83e293854571c877a92da46fdec39158f8d7e68da75bf73581225d28e90/cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775", size = 219244, upload-time = "2025-09-08T23:23:24.541Z" },
{ url = "https://files.pythonhosted.org/packages/2b/0f/1f177e3683aead2bb00f7679a16451d302c436b5cbf2505f0ea8146ef59e/cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205", size = 222828, upload-time = "2025-09-08T23:23:26.143Z" },
{ url = "https://files.pythonhosted.org/packages/c6/0f/cafacebd4b040e3119dcb32fed8bdef8dfe94da653155f9d0b9dc660166e/cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1", size = 220926, upload-time = "2025-09-08T23:23:27.873Z" },
{ url = "https://files.pythonhosted.org/packages/be/b4/c56878d0d1755cf9caa54ba71e5d049479c52f9e4afc230f06822162ab2f/cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c", size = 221593, upload-time = "2025-09-08T23:23:31.91Z" },
- { url = "https://files.pythonhosted.org/packages/e0/0d/eb704606dfe8033e7128df5e90fee946bbcb64a04fcdaa97321309004000/cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8", size = 209354, upload-time = "2025-09-08T23:23:33.214Z" },
- { url = "https://files.pythonhosted.org/packages/d8/19/3c435d727b368ca475fb8742ab97c9cb13a0de600ce86f62eab7fa3eea60/cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc", size = 208480, upload-time = "2025-09-08T23:23:34.495Z" },
{ url = "https://files.pythonhosted.org/packages/d0/44/681604464ed9541673e486521497406fadcc15b5217c3e326b061696899a/cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592", size = 221584, upload-time = "2025-09-08T23:23:36.096Z" },
{ url = "https://files.pythonhosted.org/packages/25/8e/342a504ff018a2825d395d44d63a767dd8ebc927ebda557fecdaca3ac33a/cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512", size = 224443, upload-time = "2025-09-08T23:23:37.328Z" },
{ url = "https://files.pythonhosted.org/packages/e1/5e/b666bacbbc60fbf415ba9988324a132c9a7a0448a9a8f125074671c0f2c3/cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4", size = 223437, upload-time = "2025-09-08T23:23:38.945Z" },
@@ -231,33 +221,27 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/ff/9e/6b4397a3e3d15123de3b1806ef342522393d50736c13b20ec4c9ea6693a6/cryptography-46.0.5-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c18ff11e86df2e28854939acde2d003f7984f721eba450b56a200ad90eeb0e6b", size = 4275637, upload-time = "2026-02-10T19:17:10.53Z" },
{ url = "https://files.pythonhosted.org/packages/63/e7/471ab61099a3920b0c77852ea3f0ea611c9702f651600397ac567848b897/cryptography-46.0.5-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4d7e3d356b8cd4ea5aff04f129d5f66ebdc7b6f8eae802b93739ed520c47c79b", size = 4424742, upload-time = "2026-02-10T19:17:12.388Z" },
{ url = "https://files.pythonhosted.org/packages/37/53/a18500f270342d66bf7e4d9f091114e31e5ee9e7375a5aba2e85a91e0044/cryptography-46.0.5-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:50bfb6925eff619c9c023b967d5b77a54e04256c4281b0e21336a130cd7fc263", size = 4277528, upload-time = "2026-02-10T19:17:13.853Z" },
- { url = "https://files.pythonhosted.org/packages/22/29/c2e812ebc38c57b40e7c583895e73c8c5adb4d1e4a0cc4c5a4fdab2b1acc/cryptography-46.0.5-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:803812e111e75d1aa73690d2facc295eaefd4439be1023fefc4995eaea2af90d", size = 4947993, upload-time = "2026-02-10T19:17:15.618Z" },
{ url = "https://files.pythonhosted.org/packages/6b/e7/237155ae19a9023de7e30ec64e5d99a9431a567407ac21170a046d22a5a3/cryptography-46.0.5-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3ee190460e2fbe447175cda91b88b84ae8322a104fc27766ad09428754a618ed", size = 4456855, upload-time = "2026-02-10T19:17:17.221Z" },
{ url = "https://files.pythonhosted.org/packages/2d/87/fc628a7ad85b81206738abbd213b07702bcbdada1dd43f72236ef3cffbb5/cryptography-46.0.5-cp311-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:f145bba11b878005c496e93e257c1e88f154d278d2638e6450d17e0f31e558d2", size = 3984635, upload-time = "2026-02-10T19:17:18.792Z" },
{ url = "https://files.pythonhosted.org/packages/84/29/65b55622bde135aedf4565dc509d99b560ee4095e56989e815f8fd2aa910/cryptography-46.0.5-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:e9251e3be159d1020c4030bd2e5f84d6a43fe54b6c19c12f51cde9542a2817b2", size = 4277038, upload-time = "2026-02-10T19:17:20.256Z" },
- { url = "https://files.pythonhosted.org/packages/bc/36/45e76c68d7311432741faf1fbf7fac8a196a0a735ca21f504c75d37e2558/cryptography-46.0.5-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:47fb8a66058b80e509c47118ef8a75d14c455e81ac369050f20ba0d23e77fee0", size = 4912181, upload-time = "2026-02-10T19:17:21.825Z" },
{ url = "https://files.pythonhosted.org/packages/6d/1a/c1ba8fead184d6e3d5afcf03d569acac5ad063f3ac9fb7258af158f7e378/cryptography-46.0.5-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:4c3341037c136030cb46e4b1e17b7418ea4cbd9dd207e4a6f3b2b24e0d4ac731", size = 4456482, upload-time = "2026-02-10T19:17:25.133Z" },
{ url = "https://files.pythonhosted.org/packages/f9/e5/3fb22e37f66827ced3b902cf895e6a6bc1d095b5b26be26bd13c441fdf19/cryptography-46.0.5-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:890bcb4abd5a2d3f852196437129eb3667d62630333aacc13dfd470fad3aaa82", size = 4405497, upload-time = "2026-02-10T19:17:26.66Z" },
{ url = "https://files.pythonhosted.org/packages/1a/df/9d58bb32b1121a8a2f27383fabae4d63080c7ca60b9b5c88be742be04ee7/cryptography-46.0.5-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:80a8d7bfdf38f87ca30a5391c0c9ce4ed2926918e017c29ddf643d0ed2778ea1", size = 4667819, upload-time = "2026-02-10T19:17:28.569Z" },
{ url = "https://files.pythonhosted.org/packages/67/c8/581a6702e14f0898a0848105cbefd20c058099e2c2d22ef4e476dfec75d7/cryptography-46.0.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5be7bf2fb40769e05739dd0046e7b26f9d4670badc7b032d6ce4db64dddc0678", size = 4265728, upload-time = "2026-02-10T19:17:35.569Z" },
{ url = "https://files.pythonhosted.org/packages/dd/4a/ba1a65ce8fc65435e5a849558379896c957870dd64fecea97b1ad5f46a37/cryptography-46.0.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fe346b143ff9685e40192a4960938545c699054ba11d4f9029f94751e3f71d87", size = 4408287, upload-time = "2026-02-10T19:17:36.938Z" },
{ url = "https://files.pythonhosted.org/packages/f8/67/8ffdbf7b65ed1ac224d1c2df3943553766914a8ca718747ee3871da6107e/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:c69fd885df7d089548a42d5ec05be26050ebcd2283d89b3d30676eb32ff87dee", size = 4270291, upload-time = "2026-02-10T19:17:38.748Z" },
- { url = "https://files.pythonhosted.org/packages/f8/e5/f52377ee93bc2f2bba55a41a886fd208c15276ffbd2569f2ddc89d50e2c5/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:8293f3dea7fc929ef7240796ba231413afa7b68ce38fd21da2995549f5961981", size = 4927539, upload-time = "2026-02-10T19:17:40.241Z" },
{ url = "https://files.pythonhosted.org/packages/3b/02/cfe39181b02419bbbbcf3abdd16c1c5c8541f03ca8bda240debc467d5a12/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:1abfdb89b41c3be0365328a410baa9df3ff8a9110fb75e7b52e66803ddabc9a9", size = 4442199, upload-time = "2026-02-10T19:17:41.789Z" },
{ url = "https://files.pythonhosted.org/packages/c0/96/2fcaeb4873e536cf71421a388a6c11b5bc846e986b2b069c79363dc1648e/cryptography-46.0.5-cp314-cp314t-manylinux_2_31_armv7l.whl", hash = "sha256:d66e421495fdb797610a08f43b05269e0a5ea7f5e652a89bfd5a7d3c1dee3648", size = 3960131, upload-time = "2026-02-10T19:17:43.379Z" },
{ url = "https://files.pythonhosted.org/packages/d8/d2/b27631f401ddd644e94c5cf33c9a4069f72011821cf3dc7309546b0642a0/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:4e817a8920bfbcff8940ecfd60f23d01836408242b30f1a708d93198393a80b4", size = 4270072, upload-time = "2026-02-10T19:17:45.481Z" },
- { url = "https://files.pythonhosted.org/packages/f4/a7/60d32b0370dae0b4ebe55ffa10e8599a2a59935b5ece1b9f06edb73abdeb/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:68f68d13f2e1cb95163fa3b4db4bf9a159a418f5f6e7242564fc75fcae667fd0", size = 4892170, upload-time = "2026-02-10T19:17:46.997Z" },
{ url = "https://files.pythonhosted.org/packages/d2/b9/cf73ddf8ef1164330eb0b199a589103c363afa0cf794218c24d524a58eab/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:a3d1fae9863299076f05cb8a778c467578262fae09f9dc0ee9b12eb4268ce663", size = 4441741, upload-time = "2026-02-10T19:17:48.661Z" },
{ url = "https://files.pythonhosted.org/packages/5f/eb/eee00b28c84c726fe8fa0158c65afe312d9c3b78d9d01daf700f1f6e37ff/cryptography-46.0.5-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c4143987a42a2397f2fc3b4d7e3a7d313fbe684f67ff443999e803dd75a76826", size = 4396728, upload-time = "2026-02-10T19:17:50.058Z" },
{ url = "https://files.pythonhosted.org/packages/65/f4/6bc1a9ed5aef7145045114b75b77c2a8261b4d38717bd8dea111a63c3442/cryptography-46.0.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:7d731d4b107030987fd61a7f8ab512b25b53cef8f233a97379ede116f30eb67d", size = 4652001, upload-time = "2026-02-10T19:17:51.54Z" },
{ url = "https://files.pythonhosted.org/packages/0f/04/c85bdeab78c8bc77b701bf0d9bdcf514c044e18a46dcff330df5448631b0/cryptography-46.0.5-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7d1f30a86d2757199cb2d56e48cce14deddf1f9c95f1ef1b64ee91ea43fe2e18", size = 4275349, upload-time = "2026-02-10T19:17:58.419Z" },
{ url = "https://files.pythonhosted.org/packages/5c/32/9b87132a2f91ee7f5223b091dc963055503e9b442c98fc0b8a5ca765fab0/cryptography-46.0.5-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:039917b0dc418bb9f6edce8a906572d69e74bd330b0b3fea4f79dab7f8ddd235", size = 4420667, upload-time = "2026-02-10T19:18:00.619Z" },
{ url = "https://files.pythonhosted.org/packages/a1/a6/a7cb7010bec4b7c5692ca6f024150371b295ee1c108bdc1c400e4c44562b/cryptography-46.0.5-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ba2a27ff02f48193fc4daeadf8ad2590516fa3d0adeeb34336b96f7fa64c1e3a", size = 4276980, upload-time = "2026-02-10T19:18:02.379Z" },
- { url = "https://files.pythonhosted.org/packages/8e/7c/c4f45e0eeff9b91e3f12dbd0e165fcf2a38847288fcfd889deea99fb7b6d/cryptography-46.0.5-cp38-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:61aa400dce22cb001a98014f647dc21cda08f7915ceb95df0c9eaf84b4b6af76", size = 4939143, upload-time = "2026-02-10T19:18:03.964Z" },
{ url = "https://files.pythonhosted.org/packages/37/19/e1b8f964a834eddb44fa1b9a9976f4e414cbb7aa62809b6760c8803d22d1/cryptography-46.0.5-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3ce58ba46e1bc2aac4f7d9290223cead56743fa6ab94a5d53292ffaac6a91614", size = 4453674, upload-time = "2026-02-10T19:18:05.588Z" },
{ url = "https://files.pythonhosted.org/packages/db/ed/db15d3956f65264ca204625597c410d420e26530c4e2943e05a0d2f24d51/cryptography-46.0.5-cp38-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:420d0e909050490d04359e7fdb5ed7e667ca5c3c402b809ae2563d7e66a92229", size = 3978801, upload-time = "2026-02-10T19:18:07.167Z" },
{ url = "https://files.pythonhosted.org/packages/41/e2/df40a31d82df0a70a0daf69791f91dbb70e47644c58581d654879b382d11/cryptography-46.0.5-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:582f5fcd2afa31622f317f80426a027f30dc792e9c80ffee87b993200ea115f1", size = 4276755, upload-time = "2026-02-10T19:18:09.813Z" },
- { url = "https://files.pythonhosted.org/packages/33/45/726809d1176959f4a896b86907b98ff4391a8aa29c0aaaf9450a8a10630e/cryptography-46.0.5-cp38-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:bfd56bb4b37ed4f330b82402f6f435845a5f5648edf1ad497da51a8452d5d62d", size = 4901539, upload-time = "2026-02-10T19:18:11.263Z" },
{ url = "https://files.pythonhosted.org/packages/99/0f/a3076874e9c88ecb2ecc31382f6e7c21b428ede6f55aafa1aa272613e3cd/cryptography-46.0.5-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:a3d507bb6a513ca96ba84443226af944b0f7f47dcc9a399d110cd6146481d24c", size = 4452794, upload-time = "2026-02-10T19:18:12.914Z" },
{ url = "https://files.pythonhosted.org/packages/02/ef/ffeb542d3683d24194a38f66ca17c0a4b8bf10631feef44a7ef64e631b1a/cryptography-46.0.5-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9f16fbdf4da055efb21c22d81b89f155f02ba420558db21288b3d0035bafd5f4", size = 4404160, upload-time = "2026-02-10T19:18:14.375Z" },
{ url = "https://files.pythonhosted.org/packages/96/93/682d2b43c1d5f1406ed048f377c0fc9fc8f7b0447a478d5c65ab3d3a66eb/cryptography-46.0.5-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:ced80795227d70549a411a4ab66e8ce307899fad2220ce5ab2f296e687eacde9", size = 4667123, upload-time = "2026-02-10T19:18:15.886Z" },