ControlFlow
v0.11.3: Exception-al Service

コントロールフローは、エージェントAIワークフローを構築するためのPythonフレームワークです。
コントロールフローは、コントロールや透明性を犠牲にすることなく、ワークフローを定義し、作業をLLMに委任するための構造化された開発者中心のフレームワークを提供します。
最もシンプルなコントロールフローワークフローには、1つのタスク、デフォルトエージェント、および自動スレッド管理があります。
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,
Artificial intelligence finds its place.
ControlFlowは、強力で予測可能なAI搭載アプリケーションを構築することの課題に対処します。
pipでコントロールフローをインストールします:
pip install controlflow次に、LLMプロバイダーを構成します。 ControlFlowのデフォルトプロバイダーはOpenAIです。これにはOPENAI_API_KEY環境変数が必要です。
export OPENAI_API_KEY=your-api-key
別のLLMプロバイダーを使用するには、LLM構成ドキュメントを参照してください。
ユーザーの相互作用、マルチステップワークフロー、および構造化された出力を紹介するより複雑な例を次に示します。
import controlflow as cf
from pydantic import BaseModel
class ResearchProposal ( BaseModel ):
title : str
abstract : str
key_points : list [ str ]
@ cf . flow
def research_proposal_flow ():
# Task 1: Get the research topic from the user
user_input = cf . Task (
"Work with the user to choose a research topic" ,
interactive = True ,
)
# Task 2: Generate a structured research proposal
proposal = cf . run (
"Generate a structured research proposal" ,
result_type = ResearchProposal ,
depends_on = [ user_input ]
)
return proposal
result = research_proposal_flow ()
print ( result . model_dump_json ( indent = 2 ))会話:
Agent: Hello! I'm here to help you choose a research topic. Do you have any particular area of interest or field you would like to explore? If you have any specific ideas or requirements, please share them as well. User: Yes, I'm interested in LLM agentic workflows提案:
{ "title" : " AI Agentic Workflows: Enhancing Efficiency and Automation " , "abstract" : " This research proposal aims to explore the development and implementation of AI agentic workflows to enhance efficiency and automation in various domains. AI agents, equipped with advanced capabilities, can perform complex tasks, make decisions, and interact with other agents or humans to achieve specific goals. This research will investigate the underlying technologies, methodologies, and applications of AI agentic workflows, evaluate their effectiveness, and propose improvements to optimize their performance. " , "key_points" : [ " Introduction: Definition and significance of AI agentic workflows, Historical context and evolution of AI in workflows " , " Technological Foundations: AI technologies enabling agentic workflows (e.g., machine learning, natural language processing), Software and hardware requirements for implementing AI workflows " , " Methodologies: Design principles for creating effective AI agents, Workflow orchestration and management techniques, Interaction protocols between AI agents and human operators " , " Applications: Case studies of AI agentic workflows in various industries (e.g., healthcare, finance, manufacturing), Benefits and challenges observed in real-world implementations " , " Evaluation and Metrics: Criteria for assessing the performance of AI agentic workflows, Metrics for measuring efficiency, accuracy, and user satisfaction " , " Proposed Improvements: Innovations to enhance the capabilities of AI agents, Strategies for addressing limitations and overcoming challenges " , " Conclusion: Summary of key findings, Future research directions and potential impact on industry and society " ] }
この例では、ControlFlowは自動的にflow 、または一連のタスクの共有コンテキストを管理しています。標準のPython関数とエージェントタスクをいつでも切り替えることができるため、複雑なワークフローを段階的に構築することができます。
コントロールフローに深く入り込むには: