OpenAI 통합

OpenAI 통합 (OpenAI)

OpenAI의 GPT 계열 모델을 AgentOps와 함께 사용해서, LLM 호출을 자동으로 모니터링하는 방법을 안내하는 문서예요. AgentOps는 OpenAI의 GPT 모델군에 대해 일급(first-class) 지원을 제공해요.

출처: 문서

본문

OpenAI는 AI 도구와 서비스를 제공하는 선두 기업이에요. 더 자세한 내용은 OpenAI API를 확인해 보세요.

1. AgentOps SDK 설치하기

pip install agentops
poetry add agentops

2. OpenAI SDK 설치하기

openai<1.0.0은 제한적으로 지원되고, openai>=1.0.0은 계속해서 지원돼요.

pip install openai
poetry add openai

openai<1.0.0을 설치하려면 다음을 사용하세요:

pip install "openai<1.0.0"
poetry add "openai<1.0.0"

3. 코드 3줄 추가하기

어떤 openai, cohere, crew 등의 모델을 호출하기 전에 agentops.init을 먼저 호출해 주세요.

import agentops
from openai import OpenAI

agentops.init(<INSERT YOUR API KEY HERE>)
client = OpenAI()
...
# 프로그램 종료 (예: main.py)
agentops.end_session("Success")

API 키는 .env 변수로 설정해 두면 편하게 쓸 수 있어요.

AGENTOPS_API_KEY=<YOUR API KEY>
OPENAI_API_KEY=<YOUR OPENAI API KEY>

환경 변수에 대한 더 자세한 내용은 Advanced Configuration 문서를 참고하세요.

4. 에이전트 실행하기

프로그램을 실행하고 app.agentops.ai/drilldown에 접속해서 에이전트를 관찰해 보세요! 🕵️

실행을 마치면 AgentOps가 콘솔에 대시보드의 세션으로 바로 연결되는 클릭 가능한 URL을 출력해 줘요.

전체 예제 (Full Examples)

from openai import OpenAI
import agentops

agentops.init(<INSERT YOUR API KEY HERE>)
client = OpenAI()

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{
        "role": "user",
        "content": "Write a haiku about AI and humans working together"
    }]
)

print(response.choices[0].message.content)
agentops.end_session('Success')
from openai import AsyncOpenAI
import agentops
import asyncio

async def main():
    agentops.init(<INSERT YOUR API KEY HERE>)
    client = AsyncOpenAI()

    response = await client.chat.completions.create(
        model="gpt-4o-mini",
        messages=[{
            "role": "user",
            "content": "Write a haiku about AI and humans working together"
        }]
    )

    print(response.choices[0].message.content)
    agentops.end_session('Success')

asyncio.run(main())

스트리밍 예제 (Streaming examples)

from openai import OpenAI
import agentops

agentops.init(<INSERT YOUR API KEY HERE>)
client = OpenAI()

stream = client.chat.completions.create(
    model="gpt-4o-mini",
    stream=True,
    messages=[{
          "role": "user",
          "content": "Write a haiku about AI and humans working together"
    }],
)

for chunk in stream:
  print(chunk.choices[0].delta.content or "", end="")

agentops.end_session('Success')
from openai import AsyncOpenAI
import agentops
import asyncio

async def main():
  agentops.init(<INSERT YOUR API KEY HERE>)
  client = AsyncOpenAI()

  stream = await client.chat.completions.create(
      model="gpt-4o-mini",
      stream=True,
      messages=[{
          "role": "user",
          "content": "Write a haiku about AI and humans working together"
      }],
  )

  async for chunk in stream:
      print(chunk.choices[0].delta.content or "", end="")
  
  agentops.end_session('Success')

asyncio.run(main())

어시스턴트(Assistants) 예제

예제는 Assistants 섹션에서 확인할 수 있어요.

더 알아보기 (Learn more)