KASHIKOSUGI / README.md
leave-everything's picture
Upload 16 files
bd8f290 verified

A newer version of the Gradio SDK is available: 6.6.0

Upgrade
metadata
title: Kashikogi Async Space (Draft)
emoji: 🎓
colorFrom: blue
colorTo: purple
sdk: gradio
sdk_version: 4.19.2
app_file: app.py
pinned: false

Kashikogi Async Space

賢杉賢太郎プロジェクト向けの Hugging Face Space 構成です。Gradio Blocks と FastAPI を同一プロセスで提供し、以下の機能を実装します。

  • POST /api/audio/upload : Dify 音声化ノードで生成された一時 URL を受け取り、Hugging Face Dataset に保存
  • POST /api/video/render : PDF とスライド音声一覧を受け取り、バックグラウンドジョブで動画化
  • GET /api/jobs/{job_id} : 動画化ジョブの進捗と結果確認
  • Gradio UI : Audio Upload / Video Render / Job Status タブで手動検証

ディレクトリ構成

majin/kashikogi_async_space/
├── README.md
├── app.py
├── kashikogi_app/
│   ├── core/
│   ├── models/
│   ├── services/
│   ├── utils/
│   └── gradio_interface.py
├── requirements.txt
└── packages.txt

必要な環境変数

変数名 内容
HF_DATASET_ID 音声・動画・プレビューを保存する Dataset ID
HF_TOKEN Dataset 書き込み用トークン
AUDIO_STORAGE_PREFIX 音声ファイル保存ディレクトリ(既定 audio/
VIDEO_STORAGE_PREFIX 動画・プレビュー保存ディレクトリ(既定 videos/
PDF_RENDER_DPI PDF→画像変換時の DPI(既定 150)
PREVIEW_SLIDE_INDEX プレビューに使うスライド番号(0 始まり、既定 1)
VIDEO_JOBS_MAX_WORKERS 動画レンダリングの同時実行数(既定 1)
VIDEO_JOB_CLEANUP_SECONDS ジョブ履歴保持秒数(既定 3600)
LOG_LEVEL ログレベル(既定 INFO
CALLBACK_TOKEN API/Gradio いずれも必須の共有トークン(未入力時は401)
DIFY_WORKFLOW_URL 動画完了時に呼び出す Dify ワークフローのエンドポイント
DIFY_API_KEY 上記ワークフロー実行用の API キー
DIFY_LINE_TOKEN_VALUE Dify 側で LINE トークンを参照するための値(既定 {{#env.LINE_TOKEN#}}

Space 依存

poppler-utils
ffmpeg

Python 依存は requirements.txt を参照してください。