์ด๋ป๊ฒ(How) ์คํํธ์ (Start-up) ์์ด๋์ด๋ฅผ ์ฑ์ฅ(Up)์ํค๊ณ ์ฑ๊ณต์ผ๋ก ์ด๋์ง ํต์ฐฐ์ ์ ๊ณตํ๋ AI ์ฑ๋ด ์๋น์ค
์ฌ์ฉ์: "๊ฐ์ธ ๋ง์ถคํ ์ด๋ ๋ฃจํด์ ์ถ์ฒํ๋ ์ฑ์ ๋ํ ์ ์ฌํนํ๊ฐ ์๋ค๋ฉด
ํนํ ๋ฒํธ๋ฅผ ํฌํจํด์ ์๋ ค์ฃผ์ธ์."
AI ์๋ต:
- ํนํ ๋ฒํธ 1020240047774: ์ฆ์ ๋ฐ ํ๊ฒฝ ์ ๋ณด ๊ธฐ๋ฐ ๋ง์ถคํ ๋ฃจํด ์ถ์ฒ
- ํนํ ๋ฒํธ 1020200133153: ๋ถ๋น ๋ฐ์ ๊ธฐ๋ฐ ์ด๋ ์ธก์ ๋ฐ ๋ง์ถค ํ๋ก๊ทธ๋จ ์ ๊ณต
- ํนํ ๋ฒํธ 1020240149639: ์ฌ์ฉ์ ์ ํธ๋ ๊ธฐ๋ฐ UI ํจํด ์ถ์ฒ
์ฌ์ฉ์: "์ค๋ ๊ธฐ์ค์ผ๋ก ์ด์ ๋น์ทํ ๊ธฐ์กด ์๋น์ค๊ฐ ์ด์๋๊ณ ์๋์ง,
๊ฒ์ํด์ ์์ธํ ์๋ ค์ฃผ์ธ์."
AI ์๋ต:
- ํ๋ํ(Planfit): AI ๊ธฐ๋ฐ ๊ฐ์ธ ๋ง์ถค ์ด๋ ๋ฃจํด ์ ๊ณต
- ํ๋ฆญ(FLEEK): ์ด๋ ๋ฃจํด ์ถ์ฒ + ๊ธฐ๋ก ๋ฐ ๋ถ์ ์ง์
- Nike Training Club, Hevy ๋ฑ ๊ธ๋ก๋ฒ ๊ฒฝ์ ์๋น์ค ์กด์ฌ
์ฌ์ฉ์: "๊ฐ์ธํ ์ด๋ ์ถ์ฒ ์ฑ์ด ํ๊ฒ์ผ๋ก ํ๋ ์ฃผ์ ์์ฅ์ ์ด๋์ธ์ง
์ฌ์
์ ๋ง์ ๋ํ ์ธ์ฌ์ดํธ๋ฅผ ์ฃผ์ธ์."
AI ์๋ต:
- ์ฃผ์ ์์ฅ: ํฌ์ค์ผ์ด ๋ฐ ํผํธ๋์ค ์ฐ์
- ํต์ฌ ํฌ์ธํธ: ์จ์ด๋ฌ๋ธ ๊ธฐ๊ธฐ์ ์ฐ๊ณ๋ ๋ง์ถคํ ์๋น์ค
- ์ ๋ง: 2023~2032๋
๊ธ๋ก๋ฒ ์์ฅ ์ฐํ๊ท 28.9% ์ฑ์ฅ ์์
์ฌ์ฉ์: "๊ฒฝ์ ์ฑ๊ณผ ์ฐจ๋ณํํ๊ธฐ ์ํ ์ค์ํ ์ ๋ต์ ๋ฌด์์ผ์ง
๊ตฌ์กฐํ๋ ๋ถ์์ ํด์ฃผ์ธ์."
AI ์๋ต:
1. ๋ฐ์ดํฐ ๊ธฐ๋ฐ ๊ฐ์ธํ (AIยทML ํ์ฉ)
2. ์จ์ด๋ฌ๋ธ ๊ธฐ๊ธฐ ์ฐ๋ (์ค์๊ฐ ํผ๋๋ฐฑ)
3. ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฅ ๊ฐํ (๋์ ๊ณผ์ ยท์ฑ๊ณผ ๊ณต์ )
4. ์ฌ์ฉ์ ๊ฒฝํ(UX) ๊ฐ์ (์ง๊ด์ ์ธํฐํ์ด์ค)
5. ๋ค์ํ ์ฝํ
์ธ ์ ๊ณต (์ด๋ ์์ยท์ ๋ฌธ๊ฐ ์กฐ์ธ)
6. ์ง์์ ์ธ ์
๋ฐ์ดํธ ๋ฐ ๊ฐ์
- ํ๋ก์ ํธ ๊ฐ์
- ์ฃผ์ ๊ธฐ๋ฅ
- ์ฌ์ฉ ๊ธฐ์ ๋ฐ ๋ฐ์ดํฐ
- ํ๋ก์ ํธ ๊ตฌ์กฐ
- ํ๊ฒฝ ์ค์
- ์ค์น ๋ฐ ์คํ
- ์ฌ์ฉ ๋ฐฉ๋ฒ
HowUp์ ์ฌ์ฉ์๊ฐ ์ ์ํ ์ํํธ์จ์ด ์์ด๋์ด๋ฅผ ๋ถ์ํ๊ณ , ๊ธฐ์กด ํนํ ๋ฐ ์ ์ฌ ์๋น์ค์์ ์ฐจ์ด์ ๋ฐ ์์ ์ฑ์ ํ๊ฐํ์ฌ ์ฐฝ์ ์ฑ๊ณต ๊ฐ๋ฅ์ฑ์ ๋์ด๋ AI ๊ธฐ๋ฐ ์ฑ๋ด ์๋น์ค์ ๋๋ค.
- ์์ด๋์ด ๋ถ์
- ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ์ํํธ์จ์ด ์์ด๋์ด๋ฅผ ์์ฐ์ด ์ฒ๋ฆฌ ๊ธฐ์ ๋ก ๋ถํด ๋ฐ ๋ถ์ํ์ฌ ์ฃผ์ ๊ตฌ์ฑ ์์๋ฅผ ๋์ถ.
- ๊ธฐ์กด ํนํ ๋ฐ ์๋น์ค ๊ฒ์
- KIPRISPlus Open API ๋ฐ SERPER API๋ฅผ ์ฌ์ฉํ์ฌ ๊ด๋ จ ํนํ ๋ฐ ์ ์ฌ ์๋น์ค ์ ๋ณด๋ฅผ ๊ฒ์ํ๊ณ ์ฐจ๋ณ์ ๋ฐ ์ค๋ณต ๊ฐ๋ฅ์ฑ์ ๋ถ์.
- ์ฐ์
๋ํฅ ๋ฐ ์ฌ์
์ฑ ํ๊ฐ
- DB์ ์์ฅ ๋ฐ์ดํฐ ๋ฐ ์ฐ์ ํํฉ์ ๋ถ์ํ์ฌ ์์ด๋์ด์ ์์ ์ ์ฑ๊ณต ๊ฐ๋ฅ์ฑ์ ์์ธก.
- ์ฐจ๋ณํ ์ ๋ต ๋ฑ ์นด์ด์
๋ง
- ๊ธฐ์ ์ ์กฐ์ธ, ์์ฅ ์ง์ ์ ๋ต, ์ฐจ๋ณํ ๋ฐฉ์ ๋ฑ ์ฌ์ฉ์ ๋ง์ถคํ ์ฐฝ์ ์ ๋ต์ ์ ์.
- OpenAI API
- LLM ๋ต๋ณ ์์ฑ ๋ฐ ์์ด๋์ด ๋ถ์.
- FAISS (Facebook AI Similarity Search)
- ๋ฌธ์์ ์๋ฒ ๋ฉ ๋ฒกํฐ๋ฅผ ์ ์ฅํ๊ณ ์ ์ฌ๋ ๊ฒ์์ ์ํํ๋ ๋ฒกํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ๋ด์ฅ๋ ์ง์๋ฒ ์ด์ค์์ ๋น์ฆ๋์ค ์์ด๋์ด, ์ฐ์ ๋ํฅ, ์์ฅ ๋ถ์ ์ ๋ณด ๊ฒ์
- SERPER API
- ์ค์๊ฐ ์์ฅ ๋ํฅ, ์ต์ ๋ด์ค, ๊ฒฝ์์ฌ ์ ๋ณด, ํ์ฌ ํธ๋ ๋ ๋ฑ ์ต์ ์ ๋ณด ๊ฒ์
- KIPRISPlus Open API
- ํนํ, ์ค์ฉ์ ์, ๋์์ธ, ์ํ ๋ฑ์ ์ง์์ฌ์ฐ ๋ฐ์ดํฐ ์ฐ๋
- ๊ธฐ์กด ๊ธฐ์ ์กฐ์ฌ ๋ฐ ํนํ ์นจํด ๊ฐ๋ฅ์ฑ ํ์ธ
- Streamlit
- ์ง๊ด์ ์ด๊ณ ๋ฐ์ํ ์น ์ธํฐํ์ด์ค ์ ๊ณต
- ์ค์๊ฐ AI ๋ถ์ ๊ฒฐ๊ณผ ์๊ฐํ
HowUp2/
โโโ backend/ # ๋ฐฑ์๋ ํต์ฌ ๋ก์ง
โ โโโ agent.py # AI ์์ด์ ํธ ๊ตฌํ
โ โโโ llm_model.py # LLM ๋ชจ๋ธ ๊ด๋ฆฌ
โ โโโ react_prompt.py # ReAct ํ๋กฌํํธ ํ
ํ๋ฆฟ
โ โโโ tools.py # ๋๊ตฌ ๋ฐ ์ ํธ๋ฆฌํฐ
โโโ frontend/ # ํ๋ก ํธ์๋ ์ ํ๋ฆฌ์ผ์ด์
โ โโโ app.py # Streamlit ๋ฉ์ธ ์ฑ
โ โโโ models/ # ๋ฐ์ดํฐ ๋ชจ๋ธ
โ โโโ ui/ # ์ฌ์ฉ์ ์ธํฐํ์ด์ค ์ปดํฌ๋ํธ
โโโ processing/ # ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฐ ๋ถ์
โ โโโ embeddings/ # ๋ฌธ์ ์๋ฒ ๋ฉ ์์ฑ
โ โโโ faiss_storage/ # FAISS ๋ฒกํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค
โ โโโ ragas_pipeline/ # RAG ์์คํ
์ฑ๋ฅ ํ๊ฐ ํ์ดํ๋ผ์ธ
โ โโโ run_all_RAG.py # ์ ์ฒด RAG ํ์ดํ๋ผ์ธ ์คํ ์คํฌ๋ฆฝํธ
โโโ utils/ # ์ ํธ๋ฆฌํฐ ํจ์
โ โโโ cache_manager.py # ์บ์ ๊ด๋ฆฌ
โ โโโ fetch_patent_info.py # ํนํ ์ ๋ณด ์กฐํ
โ โโโ google_serper.py # SERPER API ์ฐ๋
โ โโโ retriever_faiss.py # FAISS ๊ฒ์๊ธฐ
โโโ db/ # ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ์ผ
โโโ pdfs/ # PDF ๋ฌธ์ ์ ์ฅ์
โโโ response_cache/ # ์๋ต ์บ์
โโโ vector_construction.ipynb # ๋ฒกํฐ ๊ตฌ์ถ
- OpenAI API Key: OpenAI Platform์์ ๋ฐ๊ธ
- SERPER API Key: Serper.dev์์ ๋ฐ๊ธ
- KIPRISPlus API Key: KIPRIS์์ ๋ฐ๊ธ
- Python 3.11.10
- 8GB RAM ์ด์
- ์ธํฐ๋ท ์ฐ๊ฒฐ
git clone https://github.com/anpang1999/HowUp2.git
cd HowUp2# Windows
python -m venv venv
venv\Scripts\activate
# macOS/Linux
python3 -m venv venv
source venv/bin/activatepip install -r requirements.txt.env ํ์ผ์ ์์ฑํ๊ณ ํ์ํ API ํค๋ฅผ ์ค์ ํ์ธ์:
# ํ์ API ํค
OPENAI_API_KEY=your_openai_api_key
KIPRIS_REST_KEY=your_kipris_api_key
SERPER_API_KEY=your_serper_api_key
# ์ ํ์ฌํญ (LangChain ์ถ์ ์ฉ)
LANGCHAIN_TRACING_V2=true
LANGCHAIN_ENDPOINT=your_langchain_endpoint
LANGCHAIN_API_KEY=your_langchain_api_key
LANGCHAIN_PROJECT=your_project_namestreamlit run frontend/app.py๋ธ๋ผ์ฐ์ ์์ http://localhost:8501๋ก ์ ์
- ์ฐฝ์ ์์ด๋์ด ๋ถ์: ์ํํธ์จ์ด ์์ด๋์ด์ ๋ํ ๊ตฌ์ฒด์ ์ธ ์ง๋ฌธ ์ ๋ ฅ
- ํนํ ๊ฒ์: ์ ์ฌ ํนํ ์กด์ฌ ์ฌ๋ถ ๋ฐ ํนํ ๋ฒํธ ํ์ธ
- ๊ฒฝ์์ฌ ๋ถ์: ๊ธฐ์กด ์๋น์ค ์ด์ ํํฉ ๋ฐ ์์ฅ ์ํฉ ํ์
- ์์ฅ ์ ๋ง: ํ๊ฒ ์์ฅ ๋ฐ ์ฌ์ ์ ๋ง์ ๋ํ ์ธ์ฌ์ดํธ ์์ฒญ
- ์ฐจ๋ณํ ์ ๋ต: ๊ฒฝ์ ์ฑ๊ณผ์ ์ฐจ๋ณํ ๋ฐฉ์ ๊ตฌ์กฐํ๋ ๋ถ์ ์์ฒญ
HowUp์ ์ฌ์ฉ์ ์ง๋ฌธ์ ๋ฐ๋ผ ์๋์ผ๋ก ์ ์ ํ ๋๊ตฌ๋ฅผ ์ ํํ์ฌ ๋ต๋ณํฉ๋๋ค:
- ๋ด์ฅ ์ง์๋ฒ ์ด์ค ๊ฒ์: FAISS๋ฅผ ํตํ ๋น์ฆ๋์ค ํต์ฐฐ ๋ฐ ์ฐฝ์ ์ ๋ต ์ ๋ณด
- ์ค์๊ฐ ์ธํฐ๋ท ๊ฒ์: SERPER API๋ฅผ ํตํ ์ต์ ์์ฅ ๋ํฅ ๋ฐ ๊ฒฝ์์ฌ ์ ๋ณด
- ํนํ ์ ๋ณด ๊ฒ์: KIPRISPlus API๋ฅผ ํตํ ๊ธฐ์กด ๊ธฐ์ ์กฐ์ฌ ๋ฐ ํนํ ๋ถ์
- ์ด์ ๋ฆฌํฌํธ: GitHub Issues
- ์ด๋ฉ์ผ: nbhdqxt@gmail.com
- ํ๋ก์ ํธ ํํ์ด์ง: HowUp2