{
"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
}