<p align="center">
<a href="https://www.getdynamiq.ai/"><img src="https://raw.githubusercontent.com/dynamiq-ai/dynamiq/main/docs/img/Dynamiq_Logo_Universal_Github.png" alt="Dynamiq"></a>
</p>
<p align="center">
<em>Dynamiq은 에이전트 AI 및 LLM 애플리케이션을 위한 오케스트레이션 프레임워크입니다</em>
</p>
<p align="center">
<a href="https://getdynamiq.ai">
<img src="https://img.shields.io/website?label=website&up_message=online&url=https%3A%2F%2Fgetdynamiq.ai" alt="Website">
</a>
<a href="https://github.com/dynamiq-ai/dynamiq/releases" target="_blank">
<img src="https://img.shields.io/github/release/dynamiq-ai/dynamiq" alt="Release Notes">
</a>
<a href="#" target="_blank">
<img src="https://img.shields.io/badge/Python-3.10%2B-brightgreen.svg" alt="Python 3.10+">
</a>
<a href="https://github.com/dynamiq-ai/dynamiq/blob/main/LICENSE" target="_blank">
<img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License">
</a>
<a href="https://dynamiq-ai.github.io/dynamiq" target="_blank">
<img src="https://img.shields.io/website?label=documentation&up_message=online&url=https%3A%2F%2Fdynamiq-ai.github.io%2Fdynamiq" alt="Documentation">
</a>
</p>
Dynamiq에 오신 것을 환영합니다! 🤖
Dynamiq은 AI 기반 애플리케이션 개발을 간소화하도록 설계된 올인원(all-in-one) Gen AI 프레임워크입니다. Dynamiq은 검색 증강 생성 (RAG, retrieval-augmented generation) 및 대규모 언어 모델 (LLM, large language model) 에이전트를 오케스트레이션하는 데 특화되어 있습니다.
시작하기 (Getting Started)
도전할 준비가 되셨나요? Dynamiq을 시작하는 방법은 다음과 같습니다:
설치 (Installation)
먼저, Dynamiq을 설치해 보겠습니다. Python이 필요하므로, 먼저 시스템에 설정되어 있는지 확인하세요. 그런 다음 실행합니다:
또는 소스 코드에서 Python 패키지를 빌드할 수 있습니다:
git clone https://github.com/dynamiq-ai/dynamiq.git
cd dynamiq
uv sync
문서 (Documentation)
더 많은 예제와 자세한 가이드는 문서(documentation)를 참조해 주십시오.
예제 (Examples)
간단한 LLM 흐름
Dynamiq을 시작하는 데 도움이 되는 간단한 예시입니다:
from dynamiq.nodes.llms.openai import OpenAI
from dynamiq.connections import OpenAI as OpenAIConnection
from dynamiq.prompts import Prompt, Message
...
비동기 실행을 사용하는 간단한 ReAct 에이전트
E2B Code Interpreter에 접근할 수 있으며 복잡한 코딩 작업을 해결할 수 있는 에이전트입니다.
코드 샌드박스는 Daytona(DaytonaInterpreterTool) 및 AWS Bedrock AgentCore를 통해서도 사용할 수 있습니다.
Code Interpreter는 표준 AWS 연결을 사용하는 BedrockAgentCoreInterpreterTool을 사용합니다.
from dynamiq.nodes.llms.openai import OpenAI
from dynamiq.connections import OpenAI as OpenAIConnection, E2B as E2BConnection
from dynamiq.nodes.agents import Agent
...
WorkFlow를 사용한 두 개의 병렬 에이전트 구성
from dynamiq import Workflow
from dynamiq.nodes.llms import OpenAI
from dynamiq.connections import OpenAI as OpenAIConnection
...
WorkFlow를 사용한 두 개의 순차적 에이전트 구성
from dynamiq import Workflow
from dynamiq.nodes.llms import OpenAI
from dynamiq.connections import OpenAI as OpenAIConnection
...
다중 에이전트 오케스트레이션
from dynamiq import Workflow
from dynamiq.connections import OpenAI as OpenAIConnection, ScaleSerp as ScaleSerpConnection
from dynamiq.flows import Flow
...
RAG - 문서 인덱싱 흐름
이 워크플로우는 입력 PDF 파일을 받아 전처리하고, 벡터 임베딩으로 변환한 다음, Pinecone 벡터 데이터베이스에 저장합니다.
제공된 예시는 Pinecone의 기존 인덱스를 위한 것입니다. 인덱스 생성 예시는 docs/tutorials/rag 페이지에서 확인할 수 있습니다.
from io import BytesIO
from dynamiq import Workflow
...
RAG - 문서 검색 흐름
관련 문서를 검색하고, 검색된 문서를 사용하여 원래의 사용자 질문에 답변하는 간단한 검색 증강 생성(RAG) 흐름입니다.
from dynamiq import Workflow
from dynamiq.connections import OpenAI as OpenAIConnection, Pinecone as PineconeConnection
from dynamiq.nodes.embedders import OpenAITextEmbedder
...
메모리를 사용한 간단한 챗봇 (Simple Chatbot with Memory)
A Memory 모듈을 사용하여 대화 기록을 저장하고 검색하는 간단한 챗봇입니다.
from dynamiq.connections import OpenAI as OpenAIConnection
from dynamiq.memory import Memory
from dynamiq.memory.backends.in_memory import InMemory
...
그래프 오케스트레이터 (Graph Orchestrator)
그래프 오케스트레이터는 특정 사용 사례에 맞춰진 모든 아키텍처를 생성할 수 있게 합니다.
이메일의 피드백 및 개선을 반복적으로 관리하는 간단한 워크플로우 예시입니다.
from typing import Any
from dynamiq.connections import OpenAI as OpenAIConnection
...
기여 (Contributing)
기여를 환영합니다! 버그 보고, 기능 요청 또는 풀 리퀘스트(pull requests) 등 어떤 것이든 상관없이, CONTRIBUTING.md로 이동하여 어떻게 도움을 줄 수 있는지 확인하세요.
라이선스 (License)
Dynamiq는 오픈 소스이며 Apache 2 License에 따라 이용 가능합니다.
즐거운 코딩 되세요! 🚀