๐ค Python์์ ์ฌ์ฉํ ์ ์๋ 5๊ฐ์ง AI ๋๊ตฌ, ๋ง์น ๊ธ์ง๋ ๋ฏํ ๋๋ (& ์์ฒญ๋๊ฒ ์์ฐ์ )
Source: Dev.to
AI๋ ๋จ์ํ ๊ฐ๋ฐ ์๋๋ฅผ ๋์ธ ๊ฒ์ด ์๋๋ผ ๊ธฐ์กด ๊ท์น์ ๊นจ๋จ๋ ธ์ต๋๋ค.
๋ง์ ๋๊ตฌ๊ฐ ์๊ธ ์ ํ๋๊ณ , ์น์ธ ๋ค์๋ง ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, ๊ธฐ์
์์ ๊ธ์ง๋๊ฑฐ๋ ํ๊ณยท๊ธฐ์
ํ๊ฒฝ์์ ๊ถ์ฅ๋์ง ์์ต๋๋ค. ์
์ฑ์ฝ๋๋ผ์๊ฐ ์๋๋ผ ์ํฌํ๋ก๋ฅผ ๋๋ฌด ํจ์จ์ ์ผ๋ก ์ถ์ํ๊ธฐ ๋๋ฌธ์
๋๋ค.
โ ๏ธ ์ด ๊ธ์ ์ค๋ฆฌ์ ยท๋ฒ์ ์ฌ์ฉ์ ๋ํด์๋ง ๋ ผ์ํฉ๋๋ค.
1. Local LLMs (e.g., Ollama, llama.cpp, vllm)
๋ํ ์ธ์ด ๋ชจ๋ธ์ ๋ก์ปฌ์์ ์คํํ๋ฉด API ์ ํ, ํ ํฐ ๋น์ฉ, ๋ฒค๋ ์ข ์์ ์์จ ์ ์์ง๋ง, ๋์์ ์ค์ ์ง์ค์ ๊ฐ์ฌ ๋ก๊ทธ์ ์ปดํ๋ผ์ด์ธ์ค ์ ์ด๋ ์ฌ๋ผ์ง๋๋ค.
ollama run mistral
- ์ฆ๊ฐ์ ์ธ ์คํ โ ๋ฒค๋ ์ข ์ ์์ด ์คํ๋ผ์ธ AI.
- ๊ฑฐ๋ฒ๋์ค๊ฐ ์ฌ๋ผ์ง โ ์๋๊ฐ ๊ธ๊ฒฉํ ์์นํฉ๋๋ค.
์ โ๋ฌธ์ ๊ทธ๋๋ก ๊ธ์ง๋โ๊ฐ ๋๋๊ฐ
- ๋ง์ ๊ธฐ์ ์ด ๋ก์ปฌ LLM์ ์ ๋ฉด ๊ธ์งํฉ๋๋ค.
- ์ค์ ๊ฐ์ฌ ๋ก๊ทธ๊ฐ ์์ด ์ปดํ๋ผ์ด์ธ์ค๊ฐ ์ด๋ ค์์ง๋๋ค.
- ๊ทธ๋ฆผ์ AI ์ํ์ด ์กด์ฌํฉ๋๋ค.
2. AI Orchestration with LangChain
LangChain์ ํผ๋์ค๋ฌ์ด AI ํ๋ฆ์ ์ฐ๊ฒฐํด ์ฃผ๋ glue ๋ ์ด์ด๋ฅผ ์ ๊ณตํด ๋น ๋ฅธ ํ๋กํ ํ์ดํ๊ณผ ์ํ๊ณ ํตํฉ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
from langchain.llms import OpenAI
llm = OpenAI()
- ์จ๊ฒจ์ง ๋ณต์ก์ฑ โ ๋๋ฒ๊น ์ด ์ ๋ชฝ์ด ๋ ์ ์์ต๋๋ค.
- ๊ณผ๋ํ ์ถ์ํ โ ๊ธฐ๋ณธ ๋ชจ๋ธ ๋์์ ๊ฐ๋ฆด ์ ์์ต๋๋ค.
์ ๊ถ์ฅ๋์ง ์๋๊ฐ
- ๋ง์ ํ๋ก๋์ ํ์ด ๋ช ์์ ์ผ๋ก ์ฌ์ฉ์ ๊ธํฉ๋๋ค.
- LangChain ์์ฒด ์ ์์์กฐ์ฐจ ์ค์ฉ ์ํ์ ๊ฒฝ๊ณ ํฉ๋๋ค.
์ฑ ์ ์๋ ์ฌ์ฉ
- ์ฌ๊ณ ํ๋ ์์ํฌ.
- ์ฐ๊ตฌ ์ค์บํด๋.
- ํ๋กํ ํ์ ๊ฐ์๊ธฐ.
โ ๏ธ ๋น ๋ฅด๊ฒ ํ๋กํ ํ์ ์ ๋ง๋ค๋, ๋ฐฐํฌ ์ ์๋ ๊น๋ํ๊ฒ ์ฌ์์ฑํ์ธ์.
3. Direct Prompt Engineering (Raw LLM Access)
๋ชจ๋ธ์ ์ค์ฌ๋ ์ถ๋ ฅ ๊ฐ๋ ์์ด ์ง์ ํธ์ถํ๋ฉด ์์ ๋ฐ ์ฝํ ์ธ ์ ์ฑ ์ ์๋ฐํ ์ ์์ต๋๋ค.
response = llm(prompt)
print(response)
- ์ถ๋ ฅ ์ค์ฌ ์์ โ ์์ ๋ชจ๋ธ ์๋ต์ด ๋ฐ๋ก ์ฌ์ฉ์์๊ฒ ์ ๋ฌ๋ฉ๋๋ค.
- ํ๊ฐ ์ํ โ ์๋ชป๋ ์ ๋ณด๊ฐ ๋์ฌ ํ๋ฅ ์ด ๋์์ง๋๋ค.
- ์ปดํ๋ผ์ด์ธ์ค ์คํจ โ ๋จ์ฉ ๊ฐ๋ฅ ๋ฒกํฐ๊ฐ ์กด์ฌํฉ๋๋ค.
์ โ๋ฌธ์ ๊ทธ๋๋ก ๊ธ์ง๋โ๊ฐ ๋๋๊ฐ
- ์์ ยท์ฝํ ์ธ ์ ์ฑ ์ ์๋ฐํ ์ ์์ต๋๋ค.
- ๋ด์ฅ๋ ๊ฐ๋๋ ์ผ์ด ์์ด ์ถ๊ฐ ์ ์ด ์์ด ์ํํฉ๋๋ค.
์ฑ ์ ์๊ฒ ์ฌ์ฉํ ๋
- ๋ ๋์ ํ๋กฌํํธ ํ์.
- AI ์์ด์ ํธ ํ ์คํธ.
- ์ค์ ๋ฅ๋ ฅ ํ๊ตฌ.
๐จ AI๋ฅผ ์ดํดํ๋ ๋ฐ ํ์์ด์ง๋ง, ๋ฐ๋์ ๊ฐ๋๋ ์ผ๊ณผ ํจ๊ป ์ฌ์ฉํ์ธ์.
4. AIโPowered Development Workflow
LLM์ผ๋ก ์ฝ๋๋ฅผ ์์ฑ(์: Copilot, ์ปค์คํ LLMโ์์ฑ PR)ํ๋ฉด ์์ง๋์ด๋ง ์ ์ฑ ์ ์๋ฐํ๊ณ ๋ณด์ ์ํ์ ์ด๋ํ ์ ์์ต๋๋ค.
- ์ผ๋ฐ์ ์ธ ๊ธ์ง ํญ๋ชฉ:
- Copilotโ์ ์ฉ ์ปค๋ฐ.
- LLMโ์์ฑ ํ ๋ฆฌํ์คํธ.
- ๊ฒํ ๋์ง ์์ AI ์ฝ๋.
- ๋ถ๋ช ํํ ๋ผ์ด์ ์ค.
- ์๋ฐํ ๋ฒ๊ทธ์ ๋ณด์ ์ทจ์ฝ์ .
์ ํ์ฉํ์ ๋์ ์ ์ฌ์ ์ด์
- ์ฃผ๋์ด ์์ง๋์ด๋ ๊ณ ๋ฌด์ค๋ฆฌ ๋๋ฒ๊น ํํธ๋ ์ญํ .
- ๋ณด์ผ๋ฌํ๋ ์ดํธ ์ ๊ฑฐ์ ํ์โ์ฐ์ ์ฝ๋ฉ์ ๊ฐ์ํ.
๐ง ์๋๋ ๋จผ์ , ๊ฒ์ฆ์ ๋์ค์ โ ํ์ง๋ง ํญ์ ์๊ฒฉํ ๋ฆฌ๋ทฐ๋ฅผ ๊ฐ์ ํ์ธ์.
5. Synthetic Data Generation (PromptโBased Personas)
QA, ์ฑ๋ด ํ์ต, UX ์๋ฎฌ๋ ์ด์ ๋ฑ์ ์ํด ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๋ฉด ๋ฐ์ดํฐ์ ์ด ์ค์ผ๋๊ณ ๋ฒค์น๋งํฌ๊ฐ ์์๋ ์ ์์ต๋๋ค.
# Pseudocode
generate(
persona="angry SaaS customer",
intent="cancel subscription"
)
- ์ํ:
- ๋ฐ์ดํฐ ์๋ ๋ฌธ์ .
- ํ์ต ์ค์ผ.
- ๋ฒค์น๋งํฌ ์์.
- ํ๋ผ์ด๋ฒ์โ์์ ๋ฐ์ดํฐ ์๋ฐ.
์ต์ ์ ์ค์ฒ๋ฒ
ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ์ค์ ๋ฉํธ๋ฆญ๊ณผ ์์ ๋๋ ๋ฐ๋์ ๋ช ํํ ๋ผ๋ฒจ๋งํ์ธ์.
์ ์ด๋ฌํ ๋๊ตฌ๋ค์ด ์ ํ๋๋๊ฐ
- ๋ง์ฐฐ์ ์์ ๊ณ ๊ฑฐ๋ฒ๋์ค๋ฅผ ๊นจ๋จ๋ฆฌ๊ธฐ ๋๋ฌธ์ ๋๋ค.
- ๋ฆฌ๋ทฐ ์ฌ์ดํด์ ์ถ์ํด ๊ถํ์ด ๊ฐ์ธ์๊ฒ ์ง์ค๋ฉ๋๋ค.
- ๊ธฐ๋ณธ์ ์ผ๋ก ์ํํ ๊ฒ์ ์๋์ง๋ง, ๊ฒํ ์์ด ์ฌ์ฉํ๋ฉด ์ํํด์ง๋๋ค.
โ Indie hackers๋ ์ข ์ข ์ด๋ฅผ ํ์ฉํฉ๋๋ค.
โ ๊ท์ ๋ ๊ธฐ์ ์ ์ผ๋ฐ์ ์ผ๋ก ์ ํํฉ๋๋ค.
AI๋ ๋ชจ๋ธ ์์ฒด๋ง์ด ์๋๋ผ ์๋๋ฅผ ๋๊ฐ ์ ์ดํ๋๋์ ๊ดํ ๋ฌธ์ ์ ๋๋ค. ๊ฐ์ฅ ์์ฐ์ ์ธ ๊ฐ๋ฐ์๋ ์์ ์ด ๊ท์น์ ์ด๋ ์ ๋ ๊ตฌ๋ถ๋ฆฌ๋์ง ์ธ์ํ๊ณ , ์ด๋ฌํ ๋๊ตฌ๋ฅผ ์ฑ ์๊ฐ ์๊ฒ ์ฌ์ฉํฉ๋๋ค.