適応型職業適性テストアプリ「teste-vocacional」

AI/ML

概要

「teste-vocacional」は、OpenAIの大規模言語モデル(LLM)を活用した適応型職業適性テストです。Pythonで実装され、Streamlitを用いたシンプルなWebインターフェイスを提供。ユーザーが回答するごとに出題内容を調整し、個々に最適化された質問を通じてユーザーの職業適性を診断します。APIキーの管理はユーザー自身のものを入力する方法と、デプロイ時に設定されたキーを用いる方法の2種類に対応しており、柔軟な運用が可能です。教育現場やキャリアカウンセリングなどでの活用が期待されます。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 5
  • ファイル数: 4
  • メインの言語: Python

主な特徴

  • OpenAIのLLMを活用したインタラクティブで適応的な質問出題
  • Streamlitによる簡易かつ直感的なWeb UIの提供
  • ユーザー自身のAPIキー入力かデプロイ時のSecrets利用の2モード対応
  • 質問数のカスタマイズが可能で柔軟な診断設計を実現

技術的なポイント

「teste-vocacional」は、PythonとStreamlitをベースに構築されており、OpenAIのAPIを通じて大規模言語モデルを呼び出し、適応的な職業適性診断を実現しています。ユーザーからの回答に応じて次に出題すべき質問を動的に決定するアルゴリズムを組み込むことで、少ない質問数でより深い洞察を得られる設計が特徴です。Streamlitのサイドバーを利用してユーザーが自分のOPENAI_API_KEYを入力できる仕組みを用意し、APIキーの安全性を担保しつつ自由度の高い利用を可能にしています。また、デプロイ環境に設定されたSecretsや環境変数によってAPIキーを管理するモードも実装されており、最大10問までの制限付きながら、運用コストやセキュリティ面に配慮した運用が可能です。

コード構成はシンプルでありつつ、LLMとの対話を管理するロジックや質問の遷移管理、結果の解析処理が整理されています。requirements.txtにより使用するPythonパッケージを明確に管理し、.devcontainerディレクトリを備えることで開発環境のコンテナ化も視野に入れています。これにより、新規開発者も容易に環境構築が可能です。さらに、Streamlitを用いたUIは軽量かつレスポンシブであり、ローカルおよびクラウド双方での展開がスムーズに行えます。

このリポジトリは、機械学習モデルを活用した適性診断の事例として、教育テクノロジー分野での応用や、LLMの実践的な活用例の参考になる点が多いと言えます。特に、ユーザー体験を重視した適応的な質問設計と、APIキー管理の柔軟性という2軸の工夫は、実用的なAIサービス設計の好例です。今後の拡張や他の言語モデルの導入など、応用範囲の広がりも期待されます。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .devcontainer: 開発環境のコンテナ設定用ディレクトリ
  • README.md: プロジェクト概要とセットアップ手順の説明
  • app.py: Streamlitアプリケーションのメイン実装ファイル
  • requirements.txt: Python依存パッケージ一覧

まとめ

LLMを活用した適応型職業適性診断のシンプルかつ実用的な実装例。

リポジトリ情報: