Portkey 통합

Portkey 통합 (Portkey Integration)

Portkey는 CrewAI에 프로덕션 레디 기능을 더해서 실험적인 에이전트 crew를 견고한 시스템으로 만들어 줘요. 모든 에이전트 단계·툴 사용·상호작용의 완전한 옵저버빌리티부터 폴백·재시도·로드 밸런싱 같은 신뢰성 기능, 비용 추적, 200개 이상의 LLM 접근, 가드레일, 버전 관리되는 프롬프트까지 제공해요.

출처: 문서

본문

Introduction (소개)

Portkey는 CrewAI를 프로덕션 레디 기능으로 강화해 실험적인 에이전트 crew를 견고한 시스템으로 만들어 줘요:

  • 모든 에이전트 단계, 툴 사용, 상호작용의 완전한 옵저버빌리티
  • 폴백, 재시도, 로드 밸런싱을 갖춘 내장 신뢰성
  • AI 지출을 관리하기 위한 비용 추적과 최적화
  • 단일 통합을 통한 200+ LLM 접근
  • 에이전트 동작을 안전하고 규정 준수하게 유지하는 가드레일
  • 일관된 에이전트 성능을 위한 버전 관리 프롬프트

Installation & Setup (설치 & 설정)

  1. 필수 패키지 설치

    pip install -U crewai portkey-ai
    
  2. API Key 생성 — Portkey 대시보드에서 선택적 예산/속도 제한이 있는 Portkey API key를 만드세요. 이 키에 신뢰성, 캐싱 등을 위한 구성도 첨부할 수 있어요.

  3. Portkey로 CrewAI 구성 — 통합은 간단해요. CrewAI 설정의 LLM 구성만 업데이트하면 돼요:

    from crewai import LLM
    from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL
    
    # Create an LLM instance with Portkey integration
    gpt_llm = LLM(
        model="gpt-4o",
        base_url=PORTKEY_GATEWAY_URL,
        api_key="dummy",  # We are using a Virtual key, so this is a placeholder
        extra_headers=createHeaders(
            api_key="YOUR_PORTKEY_API_KEY",
            virtual_key="YOUR_LLM_VIRTUAL_KEY",
            trace_id="unique-trace-id",               # Optional, for request tracing
        )
    )
    
    #Use them in your Crew Agents like this:
    
    	@agent
    	def lead_market_analyst(self) -> Agent:
    		return Agent(
    			config=self.agents_config['lead_market_analyst'],
    			verbose=True,
    			memory=False,
    			llm=gpt_llm
    		)
    

    Virtual Keys란 무엇인가요? Portkey의 virtual keys는 LLM 프로바이더 API 키(OpenAI, Anthropic 등)를 암호화된 금고에 안전하게 저장해요. 키 회전과 예산 관리를 더 쉽게 해 줘요. virtual keys에 대해 자세히 알아보세요.

Production Features (프로덕션 기능)

1. Enhanced Observability (향상된 옵저버빌리티)

Portkey는 CrewAI 에이전트를 위한 종합적인 옵저버빌리티를 제공해 각 실행 중 정확히 무엇이 일어나는지 이해할 수 있게 해 줘요.

  • Traces
  • Logs
  • Metrics & Dashboards
  • Metadata Filtering

트레이스는 crew 실행의 계층적 뷰를 제공해 LLM 호출, 툴 호출, 상태 전환의 시퀀스를 보여줘요.

# Add trace_id to enable hierarchical tracing in Portkey
portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY",
        trace_id="unique-session-id"  # Add unique trace ID
    )
)

Portkey는 LLM과의 모든 상호작용을 로깅해요:

  • 완전한 요청·응답 페이로드
  • 지연 시간과 토큰 사용량 메트릭
  • 비용 계산
  • 툴 호출과 함수 실행

모든 로그는 메타데이터, 트레이스 ID, 모델 등으로 필터링할 수 있어 특정 crew 실행을 디버그하기 쉬워요.

Portkey는 내장 대시보드를 제공해:

  • 모든 crew 실행의 비용과 토큰 사용량 추적
  • 지연 시간과 성공률 같은 성능 메트릭 분석
  • 에이전트 워크플로우의 병목 식별
  • 서로 다른 crew 구성과 LLM 비교

커스텀 메타데이터로 모든 메트릭을 필터링·세분화해 특정 crew 유형, 사용자 그룹, 사용 사례를 분석할 수 있어요. CrewAI LLM 구성에 커스텀 메타데이터를 추가해 강력한 필터링·세분화를 활성화하세요:

portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY",
        metadata={
            "crew_type": "research_crew",
            "environment": "production",
            "_user": "user_123",   # Special _user field for user analytics
            "request_source": "mobile_app"
        }
    )
)

이 메타데이터로 Portkey 대시보드에서 로그, 트레이스, 메트릭을 필터링해 특정 crew 실행, 사용자, 환경을 분석할 수 있어요.

2. Reliability - Keep Your Crews Running Smoothly (신뢰성)

프로덕션에서 crew를 실행할 때 API 속도 제한, 네트워크 문제, 프로바이더 중단 같은 문제가 생길 수 있어요. Portkey의 신뢰성 기능은 문제가 발생해도 에이전트가 계속 매끄럽게 동작하도록 보장해요.

Portkey Config를 사용해 CrewAI 설정에서 폴백을 쉽게 활성화할 수 있어요:

from crewai import LLM
from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL

# Create LLM with fallback configuration
portkey_llm = LLM(
    model="gpt-4o",
    max_tokens=1000,
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        config={
            "strategy": {
                "mode": "fallback"
            },
            "targets": [
                {
                    "provider": "openai",
                    "api_key": "YOUR_OPENAI_API_KEY",
                    "override_params": {"model": "gpt-4o"}
                },
                {
                    "provider": "anthropic",
                    "api_key": "YOUR_ANTHROPIC_API_KEY",
                    "override_params": {"model": "claude-3-opus-20240229"}
                }
            ]
        }
    )
)

# Use this LLM configuration with your agents

이 구성은 GPT-4o 요청이 실패하면 자동으로 Claude를 시도해서 crew가 계속 동작하도록 보장해요.

  • Automatic Retries — 임시 실패를 자동으로 처리. LLM 호출이 실패하면 Portkey가 같은 요청을 지정된 횟수만큼 재시도해요 — 속도 제한이나 네트워크 블립에 딱 좋아요.
  • Request Timeouts — 에이전트가 멈추는 것을 방지. 요구 시간 내에 응답을 받거나(또는 우아하게 실패) 하도록 타임아웃을 설정하세요.
  • Conditional Routing — 다른 요청을 다른 프로바이더로 보내요. 복잡한 추론은 GPT-4에, 창의적 태스크는 Claude에, 빠른 응답은 Gemini에 필요에 따라 라우팅.
  • Fallbacks — 기본 프로바이더가 실패해도 계속 실행. 백업 프로바이더로 자동 전환해 가용성 유지.
  • Load Balancing — 여러 API 키나 프로바이더에 요청을 분산. 높은 볼륨의 crew 운영과 속도 제한 내 유지에 좋아요.

3. Prompting in CrewAI (프롬프팅)

Portkey의 Prompt Engineering Studio는 CrewAI 에이전트에서 사용하는 프롬프트를 생성·관리·최적화하는 데 도움을 줘요. 프롬프트나 지시를 하드코딩하는 대신 Portkey의 프롬프트 렌더링 API로 동적으로 버전 관리되는 프롬프트를 가져와 적용하세요.

  • Prompt Playground — AI 애플리케이션을 위한 완벽한 프롬프트를 비교·테스트·배포하는 곳이에요. 배포 전에 다양한 모델을 실험하고, 변수를 테스트하고, 출력을 비교하며 프롬프트 엔지니어링 전략을 다듬는 곳이에요.
  • Using Prompt Templates — 프롬프트 템플릿 사용.
  • Prompt Versioning — 프롬프트 버전 관리.
  • Mustache Templating for variables — 변수를 위한 Mustache 템플릿.

프롬프트 렌더 API는 모든 파라미터가 구성된 프롬프트 템플릿을 가져와요:

from crewai import Agent, LLM
from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL, Portkey

# Initialize Portkey admin client
portkey_admin = Portkey(api_key="YOUR_PORTKEY_API_KEY")

# Retrieve prompt using the render API
prompt_data = portkey_client.prompts.render(
    prompt_id="YOUR_PROMPT_ID",
    variables={
        "agent_role": "Senior Research Scientist",
    }
)

backstory_agent_prompt=prompt_data.data.messages[0]["content"]


# Set up LLM with Portkey integration
portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY"
    )
)

# Create agent using the rendered prompt
researcher = Agent(
    role="Senior Research Scientist",
    goal="Discover groundbreaking insights about the assigned topic",
    backstory=backstory_agent,  # Use the rendered prompt
    verbose=True,
    llm=portkey_llm
)

다음을 할 수 있어요:

  • 같은 프롬프트의 여러 버전 생성
  • 버전 간 성능 비교
  • 필요시 이전 버전으로 롤백
  • 코드에서 사용할 버전 지정:
    # Use a specific prompt version
    prompt_data = portkey_admin.prompts.render(
        prompt_id="YOUR_PROMPT_ID@version_number",
        variables={
            "agent_role": "Senior Research Scientist",
            "agent_goal": "Discover groundbreaking insights"
        }
    )
    

Portkey 프롬프트는 쉬운 변수 치환을 위해 Mustache 스타일 템플릿을 사용해요:

You are a {{agent_role}} with expertise in {{domain}}.

Your mission is to {{agent_goal}} by leveraging your knowledge
and experience in the field.

Always maintain a {{tone}} tone and focus on providing {{focus_area}}.

렌더링할 때 변수를 전달하기만 하면 돼요:

prompt_data = portkey_admin.prompts.render(
    prompt_id="YOUR_PROMPT_ID",
    variables={
        "agent_role": "Senior Research Scientist",
        "domain": "artificial intelligence",
        "agent_goal": "discover groundbreaking insights",
        "tone": "professional",
        "focus_area": "practical applications"
    }
)

4. Guardrails for Safe Crews (안전한 crew를 위한 가드레일)

가드레일은 CrewAI 에이전트가 모든 상황에서 안전하게 동작하고 적절히 응답하도록 보장해요.

왜 가드레일을 사용하나요? CrewAI 에이전트는 다양한 실패 모드를 겪을 수 있어요:

  • 유해하거나 부적절한 콘텐츠 생성
  • PII 같은 민감한 정보 유출
  • 잘못된 정보 환각
  • 잘못된 형식의 출력 생성

Portkey의 가드레일은 입력과 출력 모두에 보호를 추가해요.

가드레일 구현:

from crewai import Agent, LLM
from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL

# Create LLM with guardrails
portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY",
        config={
            "input_guardrails": ["guardrails-id-xxx", "guardrails-id-yyy"],
            "output_guardrails": ["guardrails-id-zzz"]
        }
    )
)

# Create agent with guardrailed LLM
researcher = Agent(
    role="Senior Research Scientist",
    goal="Discover groundbreaking insights about the assigned topic",
    backstory="You are an expert researcher with deep domain knowledge.",
    verbose=True,
    llm=portkey_llm
)

Portkey의 가드레일은 다음을 할 수 있어요:

  • 입력과 출력 모두에서 PII 감지·삭제
  • 유해하거나 부적절한 콘텐츠 필터링
  • 스키마에 대한 응답 형식 검증
  • ground truth에 대한 환각 검사
  • 커스텀 비즈니스 로직과 규칙 적용

5. User Tracking with Metadata (메타데이터로 사용자 추적)

Portkey의 메타데이터 시스템으로 CrewAI 에이전트를 통해 개별 사용자를 추적하세요.

Portkey의 Metadata란? 메타데이터는 각 요청에 커스텀 데이터를 연관시켜 필터링, 세분화, 분석을 가능하게 해요. 특별한 _user 필드는 사용자 추적을 위해 설계됐어요.

from crewai import Agent, LLM
from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL

# Configure LLM with user tracking
portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY",
        metadata={
            "_user": "user_123",  # Special _user field for user analytics
            "user_tier": "premium",
            "user_company": "Acme Corp",
            "session_id": "abc-123"
        }
    )
)

# Create agent with tracked LLM
researcher = Agent(
    role="Senior Research Scientist",
    goal="Discover groundbreaking insights about the assigned topic",
    backstory="You are an expert researcher with deep domain knowledge.",
    verbose=True,
    llm=portkey_llm
)

사용자별 분석 필터링 — 메타데이터를 갖추면 사용자별로 분석을 필터링하고 사용자 단위 성능 메트릭을 분석할 수 있어요:

  • 사용자별 비용 추적과 예산 책정
  • 개인화된 사용자 분석
  • 팀 또는 조직 레벨 메트릭
  • 환경별 모니터링 (스테이징 vs 프로덕션)

6. Caching for Efficient Crews (효율적인 crew를 위한 캐싱)

캐싱을 구현해 CrewAI 에이전트를 더 효율적이고 비용 효과적으로 만들 수 있어요. Simple Caching과 Semantic Caching 두 가지가 있어요.

Simple Caching (간단 캐싱):

from crewai import Agent, LLM
from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL

# Configure LLM with simple caching
portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY",
        config={
            "cache": {
                "mode": "simple"
            }
        }
    )
)

# Create agent with cached LLM
researcher = Agent(
    role="Senior Research Scientist",
    goal="Discover groundbreaking insights about the assigned topic",
    backstory="You are an expert researcher with deep domain knowledge.",
    verbose=True,
    llm=portkey_llm
)

Simple caching은 입력 프롬프트에 대한 정확한 매칭(exact match)을 수행해 동일한 요청을 캐시하고 중복 모델 실행을 피해요.

Semantic Caching (의미론적 캐싱):

from crewai import Agent, LLM
from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL

# Configure LLM with semantic caching
portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY",
        config={
            "cache": {
                "mode": "semantic"
            }
        }
    )
)

# Create agent with semantically cached LLM
researcher = Agent(
    role="Senior Research Scientist",
    goal="Discover groundbreaking insights about the assigned topic",
    backstory="You are an expert researcher with deep domain knowledge.",
    verbose=True,
    llm=portkey_llm
)

Semantic caching은 입력 요청 간의 컨텍스트 유사성을 고려해 의미적으로 유사한 입력에 대한 응답을 캐시해요.

7. Model Interoperability (모델 상호운용성)

CrewAI는 여러 LLM 프로바이더를 지원하고, Portkey는 통합 인터페이스를 통해 200개 이상의 LLM 접근을 제공해 이 기능을 확장해요. 핵심 에이전트 로직을 바꾸지 않고도 서로 다른 모델 간에 쉽게 전환할 수 있어요:

from crewai import Agent, LLM
from portkey_ai import createHeaders, PORTKEY_GATEWAY_URL

# Set up LLMs with different providers
openai_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_OPENAI_VIRTUAL_KEY"
    )
)

anthropic_llm = LLM(
    model="claude-3-5-sonnet-latest",
    max_tokens=1000,
    base_url=PORTKEY_GATEWAY_URL,
    api_key="dummy",
    extra_headers=createHeaders(
        api_key="YOUR_PORTKEY_API_KEY",
        virtual_key="YOUR_ANTHROPIC_VIRTUAL_KEY"
    )
)

# Choose which LLM to use for each agent based on your needs
researcher = Agent(
    role="Senior Research Scientist",
    goal="Discover groundbreaking insights about the assigned topic",
    backstory="You are an expert researcher with deep domain knowledge.",
    verbose=True,
    llm=openai_llm  # Use anthropic_llm for Anthropic
)

Portkey는 다음 프로바이더의 LLM 접근을 제공해요:

  • OpenAI (GPT-4o, GPT-4 Turbo 등)
  • Anthropic (Claude 3.5 Sonnet, Claude 3 Opus 등)
  • Mistral AI (Mistral Large, Mistral Medium 등)
  • Google Vertex AI (Gemini 1.5 Pro 등)
  • Cohere (Command, Command-R 등)
  • AWS Bedrock (Claude, Titan 등)
  • Local/Private Models

Set Up Enterprise Governance for CrewAI (엔터프라이즈 거버넌스 설정)

왜 엔터프라이즈 거버넌스인가요? 조직 내에서 CrewAI를 사용한다면 여러 거버넌스 측면을 고려해야 해요:

  • Cost Management — 팀 전반의 AI 지출 통제·추적.
  • Access Control — 어떤 팀이 특정 모델을 사용할 수 있는지 관리.
  • Usage Analytics — 조직 전반에서 AI가 어떻게 사용되는지 이해.
  • Security & Compliance — 엔터프라이즈 보안 표준 유지.
  • Reliability — 모든 사용자에게 일관된 서비스 보장.

Portkey는 이러한 엔터프라이즈 요구를 다루는 종합적인 거버넌스 계층을 추가해요. 제어를 단계별로 구현해 볼게요.

1. Virtual Key 생성 — Virtual Keys는 LLM 프로바이더 API 키를 안전하게 관리하는 Portkey의 방식이에요. 예산 한도, 속도 제한, 안전한 API 키 저장 같은 필수 제어를 제공해요. 생성하려면 Portkey App의 Virtual Keys로 가서 virtual key ID를 저장·복사하세요.

2. Default Config 생성 — Portkey의 Configs는 고급 라우팅, 폴백, 재시도 같은 기능으로 요청이 어떻게 라우팅되는지 정의해요. Portkey 대시보드의 Configs에서 생성하세요:

  • { "virtual_key": "YOUR_VIRTUAL_KEY_FROM_STEP1", "override_params": { "model": "gpt-4o" } }
  • Config 이름을 저장하고 다음 단계를 위해 기록하세요.

3. Portkey API Key 구성 — 이제 Portkey API key를 만들고 2단계에서 만든 config를 첨부하세요. API Keys에서 새 key를 만들고, config를 선택하고, API key를 생성·저장하세요.

4. CrewAI에 연결 — config가 첨부된 Portkey API key를 설정한 뒤 CrewAI 에이전트에 연결하세요:

from crewai import Agent, LLM
from portkey_ai import PORTKEY_GATEWAY_URL

# Configure LLM with your API key
portkey_llm = LLM(
    model="gpt-4o",
    base_url=PORTKEY_GATEWAY_URL,
    api_key="YOUR_PORTKEY_API_KEY"
)

# Create agent with Portkey-enabled LLM
researcher = Agent(
    role="Senior Research Scientist",
    goal="Discover groundbreaking insights about the assigned topic",
    backstory="You are an expert researcher with deep domain knowledge.",
    verbose=True,
    llm=portkey_llm
)

Step 1: 예산 통제 & 속도 제한 구현 — Virtual Keys는 팀/부서 레벨에서 LLM 접근에 대한 세밀한 제어를 가능하게 해요. 예산 한도를 설정하고, 속도 제한으로 예상치 못한 사용량 급증을 방지하며, 부서별 지출을 추적할 수 있어요.

  • Portkey 대시보드의 Virtual Keys로 이동.
  • 각 부서에 대해 예산 한도와 속도 제한으로 새 Virtual Key 생성.
  • 부서별 한도 구성.

Step 2: 모델 접근 규칙 정의 — AI 사용 규모가 커지면 어떤 팀이 특정 모델에 접근할 수 있는지 통제하는 것이 중요해져요. Portkey Configs가 이 제어 계층을 제공해요:

  • Model Restrictions — 특정 모델에 대한 접근 제한.
  • Data Protection — 민감한 데이터를 위한 가드레일 구현.
  • Reliability Controls — 폴백과 재시도 로직 추가.

예시 구성: 요청을 OpenAI, 특히 GPT-4o로 라우팅하는 기본 구성:

{
	"strategy": {
		"mode": "single"
	},
	"targets": [
		{
			"virtual_key": "YOUR_OPENAI_VIRTUAL_KEY",
			"override_params": {
				"model": "gpt-4o"
			}
		}
	]
}

Portkey 대시보드의 Configs 페이지에서 구성하세요. Configs는 실행 중인 애플리케이션에 영향을 주지 않고 언제든 업데이트할 수 있어요.

Step 3: 접근 제어 구현 — 자동으로 다음을 수행하는 사용자별 API key를 만드세요:

  • virtual keys를 통한 사용자/팀별 사용량 추적
  • 요청 라우팅을 위한 적절한 config 적용
  • 로그 필터링을 위한 관련 메타데이터 수집
  • 접근 권한 강제

Python SDK 사용 예시:

from portkey_ai import Portkey

portkey = Portkey(api_key="YOUR_ADMIN_API_KEY")

api_key = portkey.api_keys.create(
    name="engineering-team",
    type="organisation",
    workspace_id="YOUR_WORKSPACE_ID",
    defaults={
        "config_id": "your-config-id",
        "metadata": {
            "environment": "production",
            "department": "engineering"
        }
    },
    scopes=["logs.view", "configs.read"]
)

상세한 키 관리 지침은 Portkey 문서를 참조하세요.

Step 4: 배포 & 모니터링 — 팀원에게 API key를 배포하면 엔터프라이즈 레디 CrewAI 설정이 완성돼요. 각 팀원은 적절한 접근 레벨과 예산 통제가 담긴 지정된 API key를 사용할 수 있어요. Portkey 대시보드에서 사용량을 모니터링하세요:

  • 부서별 비용 추적
  • 모델 사용 패턴
  • 요청 볼륨
  • 에러율

이제 사용 가능한 엔터프라이즈 기능:

  • 부서별 예산 통제
  • 모델 접근 거버넌스
  • 사용량 추적 & 속성 부여
  • 보안 가드레일
  • 신뢰성 기능

Frequently Asked Questions (자주 묻는 질문)

Portkey는 CrewAI를 어떻게 강화하나요? Portkey는 종합적인 옵저버빌리티(트레이스, 로그, 메트릭), 신뢰성 기능(폴백, 재시도, 캐싱), 통합 인터페이스를 통한 200+ LLM 접근으로 CrewAI에 프로덕션 레디니스를 추가해요. 에이전트 애플리케이션을 디버그·최적화·확장하기 더 쉽게 만들어요.

기존 CrewAI 애플리케이션과 Portkey를 사용할 수 있나요? 네! Portkey는 기존 CrewAI 애플리케이션과 매끄럽게 통합돼요. LLM 구성 코드만 Portkey 활성화 버전으로 업데이트하면 돼요. 나머지 에이전트와 crew 코드는 그대로 유지돼요.

Portkey는 모든 CrewAI 기능과 함께 동작하나요? 네. Portkey는 에이전트, 툴, 인간-인-더-루프 워크플로우, 모든 태스크 프로세스 유형(순차, 계층 등)을 포함한 모든 CrewAI 기능을 지원해요. 프레임워크의 기능을 제한하지 않고 옵저버빌리티와 신뢰성을 추가해요.

crew에서 여러 에이전트에 걸친 사용량을 추적할 수 있나요? 네. Portkey를 사용하면 crew의 여러 에이전트에 일관된 trace_id를 사용해 전체 워크플로우를 추적할 수 있어요. 특히 여러 에이전트에 걸친 전체 실행 경로를 이해하고 싶은 복잡한 crew에 유용해요.

특정 crew 실행에 대한 로그와 트레이스를 어떻게 필터링하나요? Portkey는 LLM 구성에 커스텀 메타데이터를 추가할 수 있게 해 주고, 이를 필터링에 사용할 수 있어요. crew_name, crew_type, session_id 같은 필드를 추가해 특정 crew 실행을 쉽게 찾고 분석하세요.

Portkey와 내 API 키를 사용할 수 있나요? 네! Portkey는 여러 LLM 프로바이더에 대해 여러분의 API 키를 사용해요. 이를 virtual keys로 안전하게 저장해서 코드를 바꾸지 않고 키를 쉽게 관리·회전할 수 있게 해 줘요.

Resources (리소스)

  • CrewAI Docs — 공식 CrewAI 문서.
  • Book a Demo — 이 통합 구현에 대한 개인화된 안내 받기.

더 알아보기 (Learn more)