見出し画像

AIScriber: 音声文字起こし・議事録生成アプリケーション


使用動画


プロジェクト概要

AIScriber は、音声ファイルから高品質な議事録を自動生成する Flask ベースの Web アプリケーションです。音声認識技術と最新の AI を組み合わせ、効率的かつ正確な議事録作成を実現します。

システムフロー

```mermaid
graph TD
    A[音声ファイルアップロード] --> B[音声処理・文字起こし]
    B --> C[AI議事録生成]
    C --> D[結果表示・ダウンロード]
    D --> E{ユーザー選択}
    E -->|再生成| C
    E -->|完了| F[終了]

    style A fill:#f9f,stroke:#333,stroke-width:2px
    style C fill:#bfb,stroke:#333,stroke-width:2px
    style F fill:#fda,stroke:#333,stroke-width:2px
```

主要機能

  • ドラッグ&ドロップによる音声ファイル(MP3, WAV, MP4)のアップロード

  • Google Speech Recognition API を使用した高精度な文字起こし

  • Anthropic API (Claude-3-Sonnet) による AI 議事録生成

  • リアルタイムの進捗表示

  • 議事録の再生成機能

  • テキストまたは Markdown 形式での議事録ダウンロード

  • 文字起こし結果の表示

  • 自動生成される目次機能

技術スタック

```mermaid
graph TD
    A[AIScriber] --> B[バックエンド]
    A --> C[フロントエンド]
    B --> D[Python 3.5]
    B --> E[Flask]
    B --> F[Flask-SocketIO]
    B --> G[SpeechRecognition]
    B --> H[pydub]
    B --> I[Anthropic API]
    C --> J[HTML5]
    C --> K[CSS/Bootstrap]
    C --> L[JavaScript]

    style A fill:#f96,stroke:#333,stroke-width:4px
    style B fill:#bbf,stroke:#333,stroke-width:2px
    style C fill:#bfb,stroke:#333,stroke-width:2px
```

プロジェクト構造

VOICE_TEXT_GO/
├── services/
│   ├── audio_service.py
│   ├── file_service.py
│   ├── minutes_service.py
│   ├── transcription_service.py
│   └── upload_service.py
├── templates/
│   ├── index.html
│   └── LLMtest.html
├── uploads/
├── app.py
├── config.py
├── routes.py
├── requirements.txt
└── .env

セットアップ手順

リポジトリURL↓


  1. リポジトリをクローン

  2. 仮想環境を作成し有効化

  3. 依存パッケージをインストール: `pip install -r requirements.txt`

  4. `.env` ファイルに環境変数を設定

  5. アプリケーションを実行: `python app.py`

  6. ブラウザで `http://localhost:5000` にアクセス

使用方法

  1. アプリケーションにアクセス

  2. 音声ファイルをドラッグ&ドロップまたは選択

  3. "アップロード & 処理開始" をクリック

  4. 進捗状況を確認

  5. 生成された議事録を確認

  6. 必要に応じて再生成

  7. テキストまたは Markdown 形式でダウンロード

注意事項

  • Anthropic API キーが必要です

  • Google Speech Recognition API の使用制限に注意

  • アップロードファイルは処理後に自動削除されます

開発者向け情報

  • 新機能は適切なサービスファイルに実装し、`upload_service.py` の `process_upload` 関数を更新

  • フロントエンド変更は `templates/index.html` で実施

  • 環境変数の追加・変更は `config.py` と `.env` ファイルを更新

ライセンス

[ライセンス情報]


この記事は AIScriber プロジェクトの現状に基づいて作成されています。さらなる詳細や機能追加については、継続的に更新していきます。

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?