Job+Role Playing! using openAI assistant API, whisper, gradio.
게임 완료 시2024-10-25.6.16.40-2.mov
(2024.10.5 ~2024.10.26 )
-
코랩 링크: Colab 사용 가이드
-
실행 방법: 코랩 상단 탭에서 **[런타임 -> 모두 실행]**을 클릭하세요. 실행 후 "Running on public URL" 메시지가 하단에 표시됩니다.
-
주의점: Public URL은 72시간 동안 유효하지만, Gradio URL은 현재 세션과 연결되어 있습니다. 따라서 런타임을 종료하거나 노트북을 닫으면 URL이 더 이상 유효하지 않습니다.
-
해결 방법: 런타임 유지 - 세션이 유지되는 동안만 URL이 유효합니다. 인터페이스 에러 발생 시 **[런타임 -> 모두 실행]**을 다시 실행하세요.
-
참고: 특정 이모지 에러 발생 시, 다시 실행하면 해결되는 경우가 많습니다.
- 링크: Interface 사용 가이드
- Tip: 영상과 GIF를 통해 쉽게 이해할 수 있습니다!
- 전체화면:
Ctrl(또는Cmd)+Shift+F - 게임 시작: 첫 사용 시 "게임시작"을 입력하세요.
- 텍스트 박스에 입력 후
Enter키를 눌러 전송하세요. 전송 후 약 10초 대기 시간이 필요합니다. - 다음 입력 전, 텍스트박스 내용을 수동으로 지워야 합니다.
- 음성 시작: 마이크 아이콘(원)을 클릭하여 녹음 시작, 정지 버튼(네모)으로 종료하면 텍스트로 변환됩니다.
- 챗봇 전송: "말 전달하기" 버튼을 눌러 챗봇으로 전송하세요.
- 새 입력 시작: 상단의 "X" 버튼을 클릭하여 음성 입력을 초기화하고, 과정을 반복합니다.
- 사용자가 아닌 챗봇이 상대방을 잘못 지칭하는 경우가 있습니다. 이때는 상대방의 역할을 명확히 지칭해야 합니다.
- 예) 시스템이 환자 입장에서 발언해야 하는데, 의사 입장에서 말할 경우 -> ‘환자분, ~~~” 형식으로 지칭을 명확하게 해야 합니다.
- 챗봇 우측 상단의 "X"를 클릭하여 다시 시작할 수 있습니다.
SEOUL AI MAKER : 시립서울청소년센터 자치단으로, 인공지능을 활용하여 청소년을 위한 서비스와 교육을 기획하는 단체입니다. AI 기술을 활용한 창의적인 문제 해결과 청소년들에게 긍정적인 변화를 이끌어내기 위해 함께 노력하고 있습니다. A self-governing group of the Seoul Youth Center, this organization plans services and education for young people using artificial intelligence. We strive together to creatively solve problems using AI technology and to bring about positive changes for youth.
| 최유정 | 강윤하 | 박수진 | 박윤서 | 이다영 |
| 🥑 | 🍎 | 🍊 | 🍋 | 🍉 |
| 담당 선생님💛 |
대화 처리 시스템 구축, UI 설계, 게임 기획 및 로직 구현, 프로그램 구체화 및 문서화 |
직업별 코드 최적화, 안정성 테스트, 교육 자료 및 매뉴얼 제작, 프로그램 구체화 및 문서화 |
게임 로직 구현, 성공률 밸런스 테스트, 팜플렛 디자인, 프롬프트 엔지니어링 |
프롬프트 엔지니어링, 시뮬레이션 테스트 및 최적화 |
| 강민주 | 김강민 | 김영우 | 박재영 | 송현수 |
| 🍑 | 🫐 | 🍓 | 🥝 | 🥥 |
|
팜플렛 기획 및 디자인, 부스 디자인 |
프로그램 기획서, 예산 관리 |
직업별 페르소나 설정 , 스토리라인 구체화, 피드백 수집 |
포스터, 팜플렛 디자인, 예산 관리 |
포스터, 팻말, 현수막 디자인, 직업별 역할 문서화 |
이 프로젝트는 청소년을 위한 직업 체험 롤플레잉 게임입니다! 사용자는 의사, 교사, 작곡가 등 다양한 직업을 맡고, AI 어시스턴트가 유연하게 대응하여 실감 나는 직업 경험을 제공합니다. 성공률이 100%에 도달하면 사용자가 이기는 게임으로, 사용자가 직업을 깊이 이해하고, 직업 윤리에 맞게 행동할수록 성공률이 높아집니다! 다양한 시뮬레이션에서 문제를 해결하며 청소년들은 각 직업에 대해 깊이 이해할 수 있습니다.
This project is a role-playing game designed for teenagers to explore different careers. Users can take on roles such as a doctor, teacher, or composer, and interact with an AI assistant that responds flexibly to their actions. Through various simulations, teenagers can solve problems and gain a deeper understanding of different professions. The system includes conversation handling, speech recognition, and a user-friendly interface.
- Assistant API를 통한 대화 처리:사용자는 직업별 시뮬레이션 내에서 자연어로 질문을 하거나 지시를 내릴 수 있으며, AI 어시스턴트는 해당 직업에 맞는 적절한 대응을 제공합니다.
- Whisper 음성 인식을 활용한 사용자 입력 : 음성 입력을 텍스트로 변환하여 대화형 인터페이스에서 사용됩니다. 지난 상반기 교육에서 초등학교 저학년 학생들이 타자치는 것에 미숙하다는 것을 확인하였고, 음성 인식 기술을 도입하였습니다.
- gradio를 통한 사용자 친화적인 인터페이스
Conversation processing through the Assistant API: Users can ask questions or give instructions in natural language within job simulations, and the AI assistant provides appropriate responses based on the profession. An interesting element of success rates is introduced, making it a game that distinguishes between success and failure.
User input utilizing Whisper voice recognition: Voice input is converted into text for use in a conversational interface. The reason for implementing voice recognition was that during training in the first half of the year, it was observed that younger elementary school students struggled with typing, leading to the adoption of voice recognition technology.
User-friendly interface through Gradio: We quickly created a solution using Gradio, which does not require a server. In the future, we plan to develop a complete web application using FastAPI and other technologies.
## Installation / 설치 방법
1. Clone the repository:
```bash
git clone <repository-url>-
Navigate to the project directory:
cd AImaker/project1 -
Set up and activate the virtual environment: 가상 환경을 설정하고 활성화합니다:
python3 -m venv test1 source test1/bin/activate # On macOS/Linux
-
Install the required packages: 필요한 패키지를 설치합니다:
pip install -r requirements.txt
-
Activate the virtual environment (if not already active): 가상 환경을 활성화합니다 (이미 활성화되어 있지 않은 경우):
source test1/bin/activate -
Launch the main application: 메인 애플리케이션을 실행합니다:
python app_ui.py
This will start the Gradio interface, where you can interact with the AI assistants. 이 명령을 실행하면 Gradio 인터페이스가 열리며, AI 어시스턴트들과 상호작용할 수 있습니다.
-
app_ui.py: Main file for the Gradio-based user interface. Gradio 기반 사용자 인터페이스의 메인 파일입니다.
-
chat_assistantAPI.py: Handles conversation logic and interaction with the OpenAI API. 대화 로직과 OpenAI API와의 상호작용을 처리하는 파일입니다.
-
config_*.py: Configuration files for various assistant roles (e.g., doctor, teacher, lawyer). 다양한 어시스턴트 역할(의사, 교사, 변호사 등)을 위한 설정 파일들입니다.
-
speech_recognition.py: Manages speech-to-text functionality using models like Whisper. Whisper 모델을 사용한 음성 인식 기능을 처리하는 파일입니다.
-
requirements.txt: Lists the required Python packages. 필요한 Python 패키지 목록을 담은 파일입니다.
AI 대화 모델: Assistant API (OpenAI GPT 등) 음성 인식: Whisper 사용자 인터페이스: Gradio 프레임워크: Python
