Novita AI, 이제 OpenAI Agents SDK를 지원합니다!

Novita AI, 이제 OpenAI Agents SDK를 지원합니다!

OpenAI Agents SDK의 추적 시스템은 AI 워크플로우에 대한 가시성을 제공하여, 중요한 이벤트를 캡처함으로써 개발자가 애플리케이션을 효과적으로 모니터링하고 디버깅할 수 있도록 도와줍니다.

OpenAI Agents SDK란 무엇인가요?

OpenAI Agents SDK는 AI 에이전트 개발을 간소화하는 Python 툴킷입니다. OpenAI의 SWARM 프로젝트를 프로덕션에 적합하게 발전시킨 이 제품은 지능적이고 협력적이며 안전한 AI 시스템을 구축하기 위한 기능을 제공합니다. 핵심에는 LLM 기반 에이전트가 있으며, 특정 지침과 도구로 구성할 수 있고, 사용자 정의 역할을 지원하며, OpenAI 모델(o1, o3-mini, gpt-4o) 및 OpenAI 호환 API를 제공하는 타사 모델과 모두 호환됩니다.

OpenAI Agents SDK의 주요 기능

도구 및 기능 확장:

  • 함수 호출(Function Calling) : @function_tool 데코레이터를 사용하여 Python 함수를 도구로 변환하며, 자동 스키마 생성 및 Pydantic 검증을 제공합니다.
  • 내장 에이전트 루프(Built-in Agent Loop) : 도구 호출, 결과 피드백 및 작업 루프를 처리하여 에이전트와 LLM 간의 원활한 상호 작용을 지원합니다.
  • 작업 핸드오프(Task Handoffs) : 에이전트가 다른 전문화된 에이전트에게 작업을 위임할 수 있어 다중 에이전트 협업을 가능하게 합니다.

보안 및 모니터링 메커니즘:

  • 가드레일(Guardrails) : 입력 검사를 통해 유해 콘텐츠를 차단하고, 출력 검증을 통해 응답 품질과 적절성을 보장합니다.
  • 추적 도구(Tracing Tools) : 내장된 추적 기능으로 전체 에이전트 흐름을 시각화하고 모니터링하여 디버깅 및 최적화에 도움을 줍니다.

개발자 친화적 기능:

  • Python 네이티브 메서드 : 에이전트 오케스트레이션 및 체이닝에 Python 언어 기능을 활용하여 새로운 추상화를 배울 필요성을 줄입니다.
  • 높은 사용자 정의 가능성 : 사용자 정의 도구, 구조화된 출력 유형 및 외부 LLM 제공업체 통합 기능을 제공합니다.
  • 경량 설계 : 학습 곡선이 거의 필요 없는 간단하면서도 강력한 기본 요소 세트를 제공합니다.

OpenAI Agents SDK의 이점

개발 효율성

  • 설정 프로세스를 간소화하고 에이전트 애플리케이션 개발을 원활하게 하여 AI 에이전트 개발의 진입 장벽을 낮춥니다.

향상된 시스템 기능

  • 복잡한 작업 실행 및 효율적인 다중 에이전트 협업을 지원합니다.
  • 전문 협업 시스템을 만들어 복잡한 문제를 해결합니다.
  • 외부 LLM 모델을 통합하여 더 큰 유연성을 제공합니다.

보안 및 신뢰성

  • 가드레일은 안전한 AI 상호 작용을 보장합니다.
  • AI 에이전트 시스템의 신뢰성과 적절한 동작을 강화합니다.
  • AI 에이전트 애플리케이션을 프로덕션 환경에 쉽게 준비할 수 있도록 합니다.

분석 및 최적화

  • 추적 시스템은 에이전트 동작에 대한 인사이트를 제공합니다.
  • 사용자 패턴 분석 및 병목 현상 식별을 개선합니다.
  • 디버깅 및 워크플로우 최적화 기능을 향상시킵니다.

OpenAI Agents SDK 예제

1단계: 에이전트 설정

AccountingAssistant 라는 가상 비서를 생성하고 기능에 대한 명확한 지침을 제공하여 에이전트를 초기화합니다.

2단계: 도구 통합

필수 도구를 통합합니다:

  • 웹 검색 도구: 세금 업데이트 검색
  • API 호출: 재무제표 분석
  • 파일 검색 도구: 관련 문서 찾기

3단계: 작업 정의

워크플로우를 구체적인 작업으로 세분화합니다:

  • 작업 1: 최신 세금 업데이트 검색
  • 작업 2: API를 사용하여 재무 데이터 분석
  • 작업 3: 최신 데이터를 기반으로 보고서 생성

4단계: 작업 실행

작업을 순차적 또는 병렬로 실행합니다. 예:

Runner.run_sync(agent, "최신 세법 및 재무 데이터를 기반으로 보고서를 생성해.")

5단계: 모니터링 및 디버깅

추적 도구를 사용하여 작업 실행을 모니터링하고 디버깅을 위한 잠재적 문제를 식별합니다.

Novita AI를 OpenAI Agents SDK와 통합하는 방법

1. Python 환경 설정 및 Agents SDK 설치

python -m venv env
source env/bin/activate
pip install openai-agents

2. Novita API 키 설정

get api key

콘솔로 이동하여 무료 크레딧 받기

3. 핸드오프 예제

import os
from openai import AsyncOpenAI
from agents import (
    Agent,
    Runner,
    set_default_openai_api,
    set_default_openai_client,
    set_tracing_disabled,
)

BASE_URL = "https://api.novita.ai/v3/openai"
API_KEY = os.getenv("NOVITA_API_KEY")
MODEL_NAME = os.getenv("MODEL_NAME")

# Novita가 responses API를 지원하지 않으므로 chat completions API를 대신 사용합니다.
set_default_openai_api("chat_completions")
set_default_openai_client(AsyncOpenAI(base_url=BASE_URL, api_key=API_KEY))
# 이 예제에서는 추적을 비활성화합니다.
# 사용자 정의 스팬을 사용하려면 https://openai.github.io/openai-agents-python/tracing/#external-tracing-processors-list 를 참조하세요.
set_tracing_disabled(disabled=True)

agent = Agent(name="Assistant",
              instructions="You are a helpful assistant", model=MODEL_NAME)

result = Runner.run_sync(
    agent, "Write a haiku about recursion in programming.")
print(result.final_output)

# Code within the code,
# Functions calling themselves,
# Infinite loop's dance.

유연한 추적 기능을 통해 개발자는 내장 기능과 타사 통합을 통해 에이전트 동작을 추적하여 더 나은 성능과 신뢰성을 보장할 수 있습니다.

자주 묻는 질문

OpenAI Agents SDK와 함께 어떤 LLM 모델을 사용할 수 있나요?

OpenAI 모델(o1, o3-mini, gpt-4o) 및 Novita AI와 같이 OpenAI 호환 API를 제공하는 타사 모델과 호환됩니다.

OpenAI Agents SDK는 도구 통합을 어떻게 처리하나요?

@function_tool 데코레이터를 사용하여 Python 함수를 도구로 변환하며, 자동 스키마 생성 및 Pydantic 검증을 제공합니다.

OpenAI Agents SDK는 프로덕션 환경에 적합한가요?

예, 가드레일, 포괄적인 추적 및 모니터링 기능과 같은 보안 기능을 포함하고 있습니다.

Novita AI는 개발자가 간단한 API를 사용하여 AI 모델을 쉽게 배포할 수 있도록 하고, 구축 및 확장을 위한 저렴하고 안정적인 GPU 클라우드를 제공하는 AI 클라우드 플랫폼입니다.

추천 읽을거리