{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## 우리가 무얼 하는가" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "와인에 대한 지식이 없는 사람도 와인을 쉽게 즐길 수 있도록 개인의 와인 구매와 성향파악을 돕고, 추천받은 와인을 구할 수 있는 가장 가까운 매장의 정보 제공. " ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## 우리 제품의 기능\n", "1. 와인 추천: 사용자의 성향을 파악하고, 적절한 와인을 추천한다. 한국내에서 구매할 수 있는 와인을 추천하고, 구매 링크 제공을 목표로 한다.\n", "2. 와인 Q&A: 사용자가 질문을 하면 그에 적절한 정보를 제공한다.\n", "3. 와인바 추천: 사용자의 상황, 위치 등에 따라서 적절한 와인바를 추천한다." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "빠른 제품 개발을 위해 [Langchain](https://github.com/hwchase17/langchain)을 사용한다. Langchain은 언어 모델을 사용하는 제품 개발에 도움을 주는 프레임워크이다.\n", "\n", "### 아래는 Langchain 학습 자료\n", "먼저 deeplearning AI 강의를 듣고, documentation의 Quickstart와 Modules부분을 천천히 따라가 보는 것을 추천한다.\n", "- documentation: [documenatation 링크](https://python.langchain.com/docs/get_started/quickstart)
\n", "- Deeplearning AI 강의(2시간): [강의링크](https://www.deeplearning.ai/short-courses/langchain-for-llm-application-development/)\n", "- 우리모델과 비슷한 구조로 구현된 자료(Sales GPT): [Sales GPT](https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## 우리 모델 구조\n", "\n", "\n", "### 구성 요소\n", "- Assistant: 대화 기록을 보고, 다음에 Agent가 취해야할 적절한 행동을 출력한다.\n", "- Agent: 대화 기록과 Assistant에서 출력한 행동에 따라 도구를 활용해 유저에게 전달할 적절한 응답을 생성한다.\n", "- Tools: 외부 데이터를 활용하기 위한 도구\n", "- Database: 와인, 와인바 등의 정보가 담겨있는 데이터베이스\n", "- Web: 말그대로 웹(구글)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## requirements\n", "\n", "- pip install langchain\n", "- pip install openai\n", "- pip install ipykernel\n", "- pip install pandas\n", "- pip install chromadb\n", "- pip install tiktoken\n", "- pip install lark\n", "- pip install \"langchain[docarray]\"\n", "- pip install google-search-results\n", "- pip install gradio" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### 가장 먼저 [quickstart 노트북](quickstart.ipynb)을 통해 전체 모듈을 파악해보세요! " ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## TODO\n", "### Assistant\n", "- [Assistant 노트북](./assistant.ipynb)\n", "- 목표: Assistant evaluation set에 대해 95% 이상으로 Agent의 다음 action을 예측\n", "\n", "### 대화 데이터셋 제작\n", "- [Dialog dataset 제작 노트북](./generate_dialog.ipynb)\n", "- 목표: 우리 챗봇에서 일어날만한 대화 데이터셋 100개 제작\n", "\n", "### Evaluation Set 제작\n", "- [Evaluation Set 제작 노트북](./generate_evaluation.ipynb)\n", "- 목표: Assistant와 Agent evaluation set 제작\n", "\n", "### Tools 및 알고리즘 제작\n", "- [Langchain Tools 노트북](./tools.ipynb)\n", "\n", "### 와인 및 와인바 database 제작\n", "- [wine database 제작 노트북](./crawl_wine.ipynb)\n", "- [winebar database 제작 노트북](./crawl_winebar.ipynb)\n", "- 목표: 크롤링을 통한 와인 및 와인바 database 제작\n", "\n", "### Agent\n", "- [Agent 노트북](./agent.ipynb)\n", "\n", "### Gradio를 통한 웹데모 제작\n", "- [Gradio 배포 노트북](./gradio_web.ipynb)\n", "- 목표: 앱 제작 전 언어모델 테스트 및 GPT4로 생성한 데이터셋 사람이 검증 및 수정" ] } ], "metadata": { "language_info": { "name": "python" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }