![見出し画像](https://assets.st-note.com/production/uploads/images/147479515/rectangle_large_type_2_db2c1ea15abedfb43f61a7117eb77e37.png?width=1200)
AIScriber: 音声文字起こし・議事録生成アプリケーション
使用動画
動画、音声データからワンポチで高クオリティな議事録を作成するツールを作りました!
— つつ (@tsutsu_dev) July 16, 2024
テキストファイル、マークダウンファイルでダウンロード可能。議事録が秒だった場合は再生成することも可能! pic.twitter.com/b0jSC9qKZl
プロジェクト概要
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↓
リポジトリをクローン
仮想環境を作成し有効化
依存パッケージをインストール: `pip install -r requirements.txt`
`.env` ファイルに環境変数を設定
アプリケーションを実行: `python app.py`
ブラウザで `http://localhost:5000` にアクセス
使用方法
アプリケーションにアクセス
音声ファイルをドラッグ&ドロップまたは選択
"アップロード & 処理開始" をクリック
進捗状況を確認
生成された議事録を確認
必要に応じて再生成
テキストまたは Markdown 形式でダウンロード
注意事項
Anthropic API キーが必要です
Google Speech Recognition API の使用制限に注意
アップロードファイルは処理後に自動削除されます
開発者向け情報
新機能は適切なサービスファイルに実装し、`upload_service.py` の `process_upload` 関数を更新
フロントエンド変更は `templates/index.html` で実施
環境変数の追加・変更は `config.py` と `.env` ファイルを更新
ライセンス
[ライセンス情報]
この記事は AIScriber プロジェクトの現状に基づいて作成されています。さらなる詳細や機能追加については、継続的に更新していきます。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?