샘플
카탈로그 뒤의 실행 가능한 미니 프로젝트 — 폴더를 받아 Docker로 실행해 보세요.
제목+내용
사용 도구
정렬: 최근 업데이트순
- 코드 샌드박스 에이전트 — 모델이 짠 코드를 Docker에서 실행 2026년 6월 28일
samples/docker_1약 50줄짜리 LangGraph ReAct 에이전트로, runpython 도구 하나를 답니다. 실제 계산이 필요한 일 — "30번째 피보나치 수는?" — 을 주면 모델이 파이썬을 작성하고, 도구가 그 코드를 일회용 Docker 컨테이너 안에서 실행하며(네트워크 없음·CPU/메모리 제한·자동 삭제), 에이전트는 그 출력을 읽고 답합니다. 코드는 호스트에서 절대 돌지 않습니다. 모델은 LiteLLM으로 라우팅되므로 같은 코드가 Anthropic Claude·OpenAI·Google AI Studio(Gemini)에서 그대로 동작합니다 — 코드가 아니라 .env의 MODEL만 바꾸면 됩니다. - 코드 샌드박스 에이전트, LangChain 없이 — LiteLLM + LangGraph 직접 구성 2026년 6월 28일
samples/docker_2docker1과 같은 에이전트 — runpython 도구 하나를 단 ReAct 루프로, 모델이 짠 코드를 일회용 Docker 컨테이너 안에서 실행합니다 — 인데, 에이전트 의존성이 딱 둘뿐입니다: 모델 라우팅의 litellm과 루프 런타임의 langgraph. LangChain 접착이 없으므로 도구 스키마는 손으로 쓴 JSON이고, 도구 호출도 직접 디스패치하며, 상태는 OpenAI 형식의 평범한 dict 리스트입니다. 모델은 여전히 LiteLLM으로 라우팅되므로 같은 코드가 Anthropic Claude·OpenAI·Google AI Studio(Gemini)에서 그대로 동작합니다 — 코드가 아니라 .env의 MODEL만 바꾸면 됩니다. - Agno — Claude 기반 단일 에이전트 2026년 6월 28일
samples/agno_1아주 작은 Agno 샘플입니다. Claude 모델로 에이전트 하나를 만들고 프롬프트를 실행합니다. - Anthropic Claude — 도구를 사용하는 에이전트 한 턴 2026년 6월 28일
samples/anthropic-claude_1공식 Anthropic SDK로 만든 아주 작은 에이전트 루프입니다. Claude에 도구 하나(getweather)를 주면 Claude가 그것을 호출하고, 스크립트는 결과를 toolresult로 다시 보냅니다 — Claude가 최종 답을 쓸 때까지 반복합니다. 이 루프가 에이전트의 핵심 패턴입니다. - Arize Phoenix — LLM 호출 트레이싱 (self-host) 2026년 6월 28일
samples/arize-phoenix_1아주 작은 Phoenix 데모입니다. 함께 들어 있는 docker-compose가 Phoenix 서버를 띄우고, 앱은 OpenTelemetry 트레이싱을 등록한 뒤 LiteLLM 호출을 한 번(자동 계측) 하고, Phoenix에서 span을 다시 조회해 왕복을 검증합니다 — "에러 안 났다"가 아니라 실제로 들어갔는지 확인합니다. - AutoGen — 구현 샘플 2026년 6월 28일
samples/autogen_1아주 작은 AutoGen (AgentChat) 샘플입니다. 단일 어시스턴트 에이전트가 과제 하나를 실행합니다. - Chroma — 벡터 유사도 검색 (서버·키 불필요) 2026년 6월 28일
samples/chroma_1아주 작은 Chroma 데모입니다. 문서 몇 개를 저장하면 Chroma가 내장 모델로 임베딩하고, 최근접 이웃 질의를 실행합니다. 장난감 문서를 직접 바꾸면 RAG 검색기가 됩니다. API 키가 필요 없습니다. - CrewAI — 한 명짜리 crew 2026년 6월 28일
samples/crewai_1아주 작은 CrewAI 스크립트입니다. 에이전트(역할 + 목표)와 작업을 정의해 Crew로 묶고 kickoff으로 실행합니다. - DeepEval — 구현 샘플 2026년 6월 28일
samples/deepeval_1아주 작은 DeepEval 샘플입니다. Answer Relevancy 지표(LLM 채점)로 답을 채점합니다. - DSPy — 스스로 최적화하는 예측기 2026년 6월 28일
samples/dspy_1아주 작은 DSPy 프로그램입니다. 타입이 있는 시그니처 (question -> answer)를 선언하고 ChainOfThought 모듈로 감싸 답을 출력합니다. 프롬프트는 DSPy가 만들고, 여러분은 작업만 기술합니다. LM은 LiteLLM을 통해 라우팅되므로 같은 코드가 Anthropic Claude, OpenAI, Google AI Studio (Gemini) 에서 모두 동작합니다 — .env의 MODEL만 바꾸면 됩니다. - Firecrawl 웹 스크래핑 에이전트 — 문서를 마크다운으로 2026년 6월 28일
samples/firecrawl_1Firecrawl 기반 scrape 도구 하나를 가진 약 45줄짜리 LangGraph ReAct 에이전트입니다. "이 문서 페이지를 읽고 요약해줘"처럼 페이지 내용이 필요한 작업을 던지면, 그 페이지를 깔끔한 마크다운으로 가져와 읽고 답합니다. 모델은 LiteLLM을 통해 라우팅되므로 같은 코드가 Anthropic Claude, OpenAI, Google AI Studio (Gemini) 에서 모두 동작합니다 — 코드는 그대로 두고 .env의 MODEL만 바꾸면 됩니다. - Google Gemini — 최소 생성 호출 2026년 6월 28일
samples/gemini_1아주 작은 Gemini 스크립트입니다. google-genai SDK로 프롬프트 하나를 Gemini 모델에 보내고 응답을 출력합니다. - Guardrails AI — 구현 샘플 2026년 6월 28일
samples/guardrails-ai_1아주 작은 Guardrails AI 샘플입니다. LLM에 JSON을 요청한 뒤, 그 출력을 Pydantic 스키마로 검증합니다 — 타입을 변환하고 age >= 0 제약을 확인한 다음에야 신뢰합니다. - instructor — LLM에서 구조화 출력 2026년 6월 28일
samples/instructor_1아주 작은 instructor 스크립트입니다. 자유 텍스트에서 타입이 있는 Person(name·age·occupation)을 추출합니다. Pydantic 모델을 정의하면 파싱할 문자열이 아니라 검증된 객체를 돌려받습니다. fromlitellm이 호출을 라우팅하므로 MODEL이 제공자를 결정합니다. - LanceDB — 임베디드 벡터 검색 2026년 6월 28일
samples/lancedb_1아주 작은 LanceDB 스크립트입니다. 벡터 테이블을 만들고 최근접 이웃을 검색해 가장 가까운 행을 출력합니다. 완전 임베디드라 서버·API 키·네트워크가 필요 없고, 출력이 결정적입니다. - Langfuse — LLM 호출 트레이싱 (self-host) 2026년 6월 28일
samples/langfuse_1아주 작은 Langfuse 데모입니다. Claude 호출을 Langfuse generation 스팬으로 감싸 self-host Langfuse로 보낸 뒤, 트레이스를 API로 다시 읽어와 왕복을 검증합니다 — "에러 안 났다"가 아니라 실제로 들어갔는지 확인합니다. 함께 들어 있는 docker-compose가 Langfuse 스택 전체를 띄우고 LANGFUSEINIT로 프로젝트와 고정 API 키를 부트스트랩하므로, UI에서 따로 클릭할 게 없습니다. - LangGraph — 그래프를 처음부터 구성하기 2026년 6월 28일
samples/langgraph_2langgraph1이 미리 만들어진 createagent를 쓰는 것과 달리, 이 예제는 LangGraph StateGraph API로 ReAct 루프를 직접 구성합니다 — agent 노드, tools 노드, 그리고 모델이 도구 요청을 멈출 때까지 반복하는 조건부 엣지로 구성하고, 각 단계를 스트리밍해서 추론 과정을 지켜볼 수 있습니다. - LangGraph — 최소 도구 사용 에이전트 2026년 6월 28일
samples/langgraph_1약 50줄짜리 LangGraph ReAct 에이전트입니다. 두 개의 도구(multiply, isprime)로 LLM을 호출하고, 답을 낼 수 있을 때까지 추론 루프를 돕니다. 모델은 LiteLLM을 통해 라우팅되므로 같은 코드가 Anthropic Claude, OpenAI, Google AI Studio (Gemini) 에서 모두 동작합니다 — .env의 MODEL만 바꾸면 됩니다. - LangSmith — Claude 호출 트레이싱 (hosted) 2026년 6월 28일
samples/langsmith_1아주 작은 LangSmith 데모입니다. @traceable로 Claude 호출을 감싸 LangSmith에 run으로 보낸 뒤, SDK로 그 run을 다시 읽어와 출력합니다 — "에러 안 났다"가 아니라 실제로 들어갔는지 확인하는 왕복 검증입니다. LangSmith는 호스티드 SaaS라 본인 API 키가 필요합니다. 무료 self-host는 없습니다. - LiteLLM — 하나의 인터페이스, 모든 제공자 2026년 6월 28일
samples/litellm_1아주 작은 LiteLLM 스크립트입니다. 프롬프트 하나를 litellm.completion()으로 보내고 응답을 출력합니다. 같은 호출이 Anthropic Claude, OpenAI, Google AI Studio (Gemini) 에서 모두 동작합니다 — 코드는 그대로 두고 .env의 MODEL만 바꾸면 됩니다. - LlamaIndex — 구현 샘플 2026년 6월 28일
samples/llamaindex_1아주 작은 LlamaIndex 샘플입니다. 문서 둘을 색인해 그에 근거한 답을 돌려줍니다(OpenAI 임베딩 + LLM). - Mem0 — 기억 저장·회상 2026년 6월 28일
samples/mem0_1아주 작은 Mem0 스크립트입니다. 사용자에 대한 사실을 추가한 뒤 검색합니다. Mem0는 메시지를 간결한 사실로 추려(LLM) 저장하고, 관련된 것을 벡터 스토어에서 회상합니다. 이 설정은 OpenAI를 씁니다. - Milvus Lite — 임베디드 벡터 검색 2026년 6월 28일
samples/milvus_1Milvus Lite를 쓰는 아주 작은 Milvus 스크립트입니다. 컬렉션을 만들고 벡터 몇 개를 넣은 뒤 유사도 검색으로 가장 가까운 행을 출력합니다. 로컬 파일에서 임베디드로 동작해 서버·API 키·네트워크가 필요 없고, 출력이 결정적입니다. - mini-SWE-agent — 셸만 쓰는 코딩 에이전트 2026년 6월 28일
samples/mini-swe-agent_1아주 작은 mini-SWE-agent 바인딩입니다. DefaultAgent가 텍스트 기반 LiteLLM 모델로 LocalEnvironment를 구동합니다. 작업을 읽고, 한 번에 bash 명령 하나를 실행하고, 출력을 관찰하며 제출할 때까지 반복합니다. 모델은 LiteLLM을 통해 라우팅되므로 같은 코드가 Anthropic Claude, OpenAI, Google AI Studio (Gemini) 에서 모두 동작합니다 — .env의 MODEL만 바꾸면 됩니다. - NeMo Guardrails — 구현 샘플 2026년 6월 28일
samples/nemo-guardrails_1아주 작은 NeMo Guardrails 샘플입니다. Colang으로 쓴 인사 레일을 불러와 응답을 생성하므로, 봇은 자유 형식 대신 정해진 승인 메시지로 답합니다. 메인·임베딩 모델 모두 OpenAI라 로컬 모델 다운로드가 없습니다. - Ollama — LiteLLM으로 로컬 LLM 호출 2026년 6월 28일
samples/ollama_1로컬 Ollama 서버에서 도는 모델을 LiteLLM으로 호출하는 아주 작은 스크립트입니다 — API 키도, 클라우드도 필요 없습니다. LiteLLM을 거치므로 MODEL만 바꾸면 같은 코드가 클라우드 모델에서도 돕니다. - OpenAI — 최소 채팅 호출 2026년 6월 28일
samples/openai_1아주 작은 OpenAI 스크립트입니다. 공식 SDK로 프롬프트 하나를 GPT 모델에 보내고 응답을 출력합니다. - OpenAI Agents SDK — 구현 샘플 2026년 6월 28일
samples/openai-agents-sdk_1아주 작은 OpenAI Agents SDK 샘플입니다. 에이전트를 정의해 프롬프트를 실행합니다. - OpenHands — 자율 코딩 에이전트 (로컬 워크스페이스) 2026년 6월 28일
samples/openhands_1OpenHands Agent SDK로 만든 headless OpenHands 실행입니다. 에이전트에 터미널·파일 편집 도구와 작업을 주면, 끝날 때까지 읽기–편집–실행 루프를 돕니다. SDK의 로컬 워크스페이스를 쓰기 때문에 에이전트가 이 컨테이너 안에서 동작하고 — 중첩 Docker 샌드박스가 없습니다 — 전체가 docker run 한 번으로 끝납니다. - OpenRouter — 키 하나로 여러 모델 (LiteLLM 경유) 2026년 6월 28일
samples/openrouter_1아주 작은 OpenRouter 스크립트입니다. 프롬프트 하나를 litellm.completion()으로 보내고 응답을 출력합니다. OpenRouter는 수백 개의 모델을 단일 API 키 뒤에 두는 OpenAI 호환 게이트웨이입니다. 코드는 그대로 두고 MODEL만 바꾸면 Claude, GPT, Gemini, Llama 등을 오갈 수 있습니다. - pgvector — Postgres 안의 벡터 유사도 검색 2026년 6월 28일
samples/pgvector_1아주 작은 pgvector 데모입니다. vector 컬럼을 만들고, 3차원 장난감 "임베딩" 몇 개를 저장한 뒤, 코사인 거리 연산자 (<=>)로 최근접 이웃을 조회합니다. 장난감 벡터를 임베딩 모델의 출력으로 바꾸면 SQL은 그대로입니다. - Pydantic AI — 타입이 있는 에이전트 2026년 6월 28일
samples/pydantic-ai_1아주 작은 Pydantic AI 스크립트입니다. 자유 텍스트에서 Person(name·age·occupation)을 추출합니다. 에이전트의 outputtype이 Pydantic 모델이라, 파싱할 문자열이 아니라 검증된 객체를 돌려받습니다. - Qdrant — 벡터 유사도 검색 (서버·키 불필요) 2026년 6월 28일
samples/qdrant_1아주 작은 Qdrant 데모입니다. 문서 몇 개를 인메모리 컬렉션에 저장하면 fastembed가 로컬에서 임베딩하고, 최근접 이웃 질의를 실행합니다. 장난감 문서를 직접 바꾸면 RAG 검색기가 됩니다. API 키가 필요 없습니다. - Ragas — 구현 샘플 2026년 6월 28일
samples/ragas_1아주 작은 Ragas 샘플입니다. RAG 답을 충실도와 응답 관련성으로 채점하며, OpenAI 모델과 임베딩이 채점을 맡습니다. - Sentence Transformers — 로컬 임베딩 + 유사도 2026년 6월 28일
samples/sentence-transformers_1아주 작은 Sentence Transformers 데모입니다. 문서 몇 개와 질의를 CPU에서 임베딩한 뒤, 코사인 유사도로 문서를 정렬합니다. API 키가 필요 없습니다 — 모델이 로컬에서 돕니다. - smolagents — 구현 샘플 2026년 6월 28일
samples/smolagents_1아주 작은 smolagents 샘플입니다. 코드를 작성·실행해 과제를 푸는 코드 에이전트를 실행합니다. 모델은 LiteLLM으로 라우팅되므로 MODEL로 어떤 제공자든 쓸 수 있습니다. - Tavily 웹 검색 에이전트 — 오늘의 환율 묻기 2026년 6월 28일
samples/tavily_1Tavily 기반 websearch 도구 하나를 가진 약 40줄짜리 LangGraph ReAct 에이전트입니다. "오늘 USD/KRW 환율?"처럼 지금의 데이터라야 답할 수 있는 질문을 던지면, 웹을 검색해 최신 결과를 읽고 값과 출처를 함께 답합니다. 모델은 LiteLLM을 통해 라우팅되므로 같은 코드가 Anthropic Claude, OpenAI, Google AI Studio (Gemini) 에서 모두 동작합니다. 코드는 그대로 두고 .env의 MODEL만 바꾸면 됩니다.
일치하는 샘플이 없습니다.