Show HN: ControlFlow – 오픈 소스 AI 워크플로우 (AI workflows)
요약
ControlFlow는 에이전트 기반의 AI 워크플로우를 구축하기 위한 Python 프레임워크입니다. 작업 중심 아키텍처를 통해 복잡한 AI 프로세스를 관리 가능한 단계로 분해하며, 구조화된 결과와 멀티 에이전트 오케스트레이션을 지원하여 예측 가능한 AI 애플리케이션 개발을 돕습니다.
핵심 포인트
- 작업(Task) 중심 아키텍처를 통해 복잡한 워크플로우를 관찰 가능한 단계로 분해
- Pydantic 등을 활용한 타입 안정성이 보장된 구조화된 결과(Structured Results) 제공
- 여러 특화된 에이전트를 조정하는 멀티 에이전트 오케스트레이션 기능
- Prefect 3.0 지원을 통한 네이티브 관찰 가능성(Observability) 확보
- 차세대 엔진은 Marvin 에이전트 프레임워크로 병합될 예정
중요
참고: 차세대 ControlFlow 엔진은 Marvin 에이전트 프레임워크 (agentic framework)로 병합되었으며, 이 저장소(repo)는 아카이브되었습니다.
ControlFlow는 에이전트 기반 AI 워크플로우 (agentic AI workflows)를 구축하기 위한 Python 프레임워크입니다.
ControlFlow는 제어력이나 투명성을 희생하지 않으면서, 워크플로우를 정의하고 LLM에 작업을 위임할 수 있는 구조적이고 개발자 중심적인 프레임워크를 제공합니다:
- AI가 수행할 개별적이고 관찰 가능한 작업 (tasks)을 생성합니다.
- 각 작업에 하나 이상의 특화된 AI 에이전트 (agents)를 할당합니다.
- 작업을 하나의 흐름 (flow)으로 결합하여 더 복잡한 동작을 오케스트레이션 (orchestrate)합니다.
가장 단순한 ControlFlow 워크플로우는 하나의 작업, 기본 에이전트, 그리고 자동 스레드 관리 (thread management)를 포함합니다:
import controlflow as cf
result = cf.run("Write a short poem about artificial intelligence")
print(result)
결과:
In circuits and code, a mind does bloom,
With algorithms weaving through the gloom.
A spark of thought in silicon's embrace,
...
ControlFlow는 강력하면서도 예측 가능한 AI 기반 애플리케이션을 구축할 때 발생하는 과제들을 해결합니다:
- 🧩
작업 중심 아키텍처 (Task-Centric Architecture): 복잡한 AI 워크플로우를 관리 가능하고 관찰 가능한 단계로 분해합니다. - 🔒
구조화된 결과 (Structured Results): 타입 안정성(type-safe)이 보장되고 검증된 출력을 통해 AI와 전통적인 소프트웨어 사이의 간극을 메웁니다. - 🤖
특화된 에이전트 (Specialized Agents): 효율적인 문제 해결을 위해 작업별로 특화된 AI 에이전트를 배치합니다. - 🎛️
유연한 제어 (Flexible Control): 워크플로우 내에서 제어와 자율성 사이의 균형을 지속적으로 조정합니다. - 🕹️
멀티 에이전트 오케스트레이션 (Multi-Agent Orchestration): 단일 워크플로우 또는 작업 내에서 여러 AI 에이전트를 조정합니다. - 🔍
네이티브 관찰 가능성 (Native Observability): Prefect 3.0의 완전한 지원을 통해 AI 워크플로우를 모니터링하고 디버깅합니다. - 🔗
생태계 통합 (Ecosystem Integration): 기존 코드, 도구 및 광범위한 AI 생태계와 원활하게 연동됩니다.
pip로 ControlFlow 설치하기:
pip install controlflow
다음으로, LLM 제공업체 (provider)를 설정하세요. ControlFlow의 기본 제공업체는 OpenAI이며, OPENAI_API_KEY 환경 변수가 필요합니다:
export OPENAI_API_KEY=your-api-key
다른 LLM 제공업체를 사용하려면 LLM 설정 문서를 참조하세요.
다음은 사용자 상호작용, 다단계 워크플로우 (multi-step workflow), 그리고 구조화된 출력 (structured outputs)을 보여주는 더 복잡한 예시입니다:
import controlflow as cf
from pydantic import BaseModel
class ResearchProposal(BaseModel):
...
클릭하여 결과 보기
대화 (Conversation):
에이전트 (Agent): 안녕하세요! 연구 주제를 선택하는 데 도움을 드리겠습니다. 탐구하고 싶은 특별한 관심 분야나 영역이 있으신가요? 구체적인 아이디어나 요구 사항이 있다면 함께 공유해 주세요. 사용자 (User): 네, LLM 에이전틱 워크플로우 (LLM agentic workflows)에 관심이 있습니다.
제안서 (Proposal): {
"title": "AI 에이전틱 워크플로우 (AI Agentic Workflows): 효율성 및 자동화 향상",
"abstract": "본 연구 제안서는 다양한 영역에서 효율성과 자동화를 향상시키기 위한 AI 에이전틱 워크플로우 (AI agentic workflows)의 개발 및 구현을 탐구하는 것을 목표로 합니다. 고급 역량을 갖춘 AI 에이전트 (AI agents)는 복잡한 작업을 수행하고, 의사 결정을 내리며, 특정 목표를 달성하기 위해 다른 에이전트 또는 인간과 상호작용할 수 있습니다. 본 연구는 AI 에이전틱 워크플로우의 기반 기술, 방법론 및 응용 분야를 조사하고, 그 효과를 평가하며, 성능을 최적화하기 위한 개선 방안을 제안할 것입니다.",
"key_points": [
"서론: AI 에이전틱 워크플로우의 정의 및 중요성, 워크플로우 내 AI의 역사적 맥락 및 진화",
"기술적 토대: 에이전틱 워크플로우를 가능하게 하는 AI 기술 (예: 머신러닝 (machine learning), 자연어 처리 (natural language processing)), AI 워크플로우 구현을 위한 소프트웨어 및 하드웨어 요구 사항",
"방법론: 효과적인 AI 에이전트를 만들기 위한 설계 원칙, 워크플로우 오케스트레이션 (workflow orchestration) 및 관리 기술, AI 에이전트와 인간 운영자 간의 상호작용 프로토콜",
"응용 분야: 다양한 산업 분야(예: 의료, 금융, 제조)에서의 AI 에이전틱 워크플로우 사례 연구, 실제 구현에서 관찰된 이점 및 과제",
"평가 및 지표: AI 에이전틱 워크플로우의 성능을 평가하기 위한 기준, 지표 (Metrics) ..."
효율성 (Efficiency), 정확도 (Accuracy), 그리고 사용자 만족도 (User satisfaction) 측정", "제안된 개선 사항 (Proposed Improvements): AI 에이전트의 역량을 강화하기 위한 혁신, 한계점을 해결하고 과제를 극복하기 위한 전략", "결론 (Conclusion): 주요 연구 결과 요약, 향후 연구 방향 및 산업과 사회에 미칠 잠재적 영향" ] }
이 예시에서 ControlFlow는 일련의 작업들을 위한 공유 컨텍스트(Shared context)인 flow를 자동으로 관리합니다.
표준 Python 함수와 에이전틱 작업 (Agentic tasks) 사이를 언제든지 전환할 수 있어, 복잡한 워크플로우 (Workflows)를 점진적으로 구축하기 용이합니다.
ControlFlow에 대해 더 자세히 알아보기:
AI 자동 생성 콘텐츠
본 콘텐츠는 HN AI Research의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기