PromptLayer: 프롬프트 엔지니어링을 위한 플랫폼

트위터 데모를 구축하는 것은 쉽지만, 견고한 모니터링, 프롬프트 버전 관리, 비용 분석, 그리고 프롬프트의 효과성을 평가할 수 있는 방법을 통해 실제 AI 앱을 구축할 수 있도록 도와주는 플랫폼이 필요합니다.

PromptLayer는 프롬프트 엔지니어링을 위한 플랫폼으로, OpenAI의 대형 언어 모델(Large Language Model, LLM)과 같은 언어 모델에 대한 요청을 추적, 관리, 공유할 수 있게 돕습니다. 프롬프트 엔지니어링은 언어 모델에게 특정 작업을 수행하도록 지시하는 프롬프트를 생성하고 최적화하는 과정을 의미합니다. PromptLayer는 이러한 프롬프트 엔지니어링 작업을 지원하고 개선하기 위해 다양한 기능을 제공합니다. 다음은 PromptLayer의 주요 기능들입니다:

  1. API 요청 로깅:
    • 사용자의 모든 OpenAI API 요청을 기록하여, PromptLayer 대시보드에서 요청 기록을 쉽게 검색하고 탐색할 수 있게 합니다.
  2. 프롬프트 엔지니어링 추적:
    • GPT 프롬프트 엔지니어링을 추적, 관리, 공유할 수 있는 첫 번째 플랫폼으로, 사용자의 LLM 요청을 추적해줍니다.
  3. 메모리, 에이전트, 체인 기능:
    • 여러 유용한 기능을 제공하여, 프롬프트 엔지니어링 작업을 더 효과적으로 수행할 수 있게 돕습니다. Python wrapper 라이브러리를 통해 쉽게 PromptLayer에 접근할 수 있습니다.
  4. 프롬프트 레지스트리:
    • 프롬프트 템플릿을 쉽게 관리할 수 있도록 해주며, 사용자 정의 프롬프트 문자열에서 변수를 쉽게 사용할 수 있게 해줍니다. 프롬프트 템플릿은 고유하게 명명되며 태그를 가질 수 있습니다.

PromptLayer는 프롬프트 엔지니어링 작업을 단순화하고 개선하는 데 도움이 되는 도구로, 특히 GPT-3와 같은 대형 언어 모델과 작업할 때 유용합니다. 이 플랫폼을 통해 사용자는 프롬프트를 조직하고, 언어 모델 요청을 로깅하고 분석할 수 있으며, 프롬프트 엔지니어링 프로젝트를 더 효과적으로 관리할 수 있습니다.

시작하기

  1. www.promptlayer.com에서 계정에 가입하세요.
  2. PromptLayer에서 API 키를 가져오세요.
  3. 기존 프로젝트에 PromptLayer를 추가하는 것은 매우 쉽습니다.

아래 코드로 시작하세요!

# `pip install promptlayer`를 통해 확실히 설치하세요
import promptlayer

# 'import openai'를 교체하세요
openai = promptlayer.openai

# 재미있는 것을 해보세요 🚀
openai.Completion.create(
  engine="text-davinci-003",
  prompt="My name is",
  pl_tags=["name-guessing", "pipeline-2"]
)

튜토리얼

이 튜토리얼에서는 데이터 기반 프롬프트 엔지니어링 프로세스를 안내해 드리겠습니다.

PromptLayer는 다양한 언어 모델을 작업하고, 요청을 만들고 평가하며, 프롬프트와 요청을 추적하기 위한 통합 인터페이스를 제공합니다. 이는 OpenAI, Anthropic, HuggingFace 등의 다양한 모델을 지원합니다.

데이터 과학자, 머신 러닝 엔지니어 또는 개발자인 경우, PromptLayer는 언어 모델을 더 효과적이고 효율적으로 관리하는 데 도움이 될 수 있습니다. 시작해보겠습니다!

환경 설정하기

시작하기 전에, 우리는 .env 파일에서 환경 변수를 로드해야 합니다. 이 파일에는 PromptLayer와 OpenAI의 API 키가 포함되어야 합니다.

www.promptlayer.com에서 가입하여 대시보드를 통해 PromptLayer API 키를 가져오세요.

.env

OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>
PROMPTLAYER_API_KEY=<YOUR_PROMPTLAYER_API_KEY>

dotenv 패키지를 사용하여 이러한 변수를 로드할 수 있습니다:

from dotenv import load_dotenv

# .env 파일에서 환경 변수 로드
load_dotenv('.env')

환경 변수를 로드한 후에는 promptlayer를 가져와서 PromptLayer의 API 키를 설정할 수 있습니다. Python을 사용하는 경우 먼저 pip install promptlayer를 확인하세요.

import promptlayer
import os
promptlayer.api_key = os.environ.get("PROMPTLAYER_API_KEY")

첫 번째 요청 만들기

PromptLayer는 본질적으로 REST 라이브러리입니다. PromptLayer Python SDK를 사용하는 것은 API에 직접 요청을 하는 것과 동일하지만 조금 더 쉽습니다.

지연 시간이 매우 중요하기 때문에, PromptLayer를 사용하는 최선의 방법은 먼저 OpenAI에 요청을 하고 그 다음에 PromptLayer에 요청을 로깅하는 것입니다. 이것이 바로 Python SDK가 내부적으로 어떻게 작동하는지에 대한 것입니다.

Python SDK 사용에 익숙하다면, 해야 할 일은 import openaiopenai = promptlayer.openai로 교체하는 것 뿐입니다. 나머지 코드는 동일하게 유지됩니다!

이 단계에서는 OpenAI GPT-3 엔진에 “My name is”라는 프롬프트에 대한 응답을 생성하기 위한 간단한 요청을 할 것입니다. # import openai 대신에 사용하겠습니다.

openai = promptlayer.openai
openai.api_key = os.environ.get("OPENAI_API_KEY")

# OpenAI에 완성 요청을 만듭니다
response = openai.Completion.create(
  engine="text-davinci-003", 
  prompt="My name is",
)
print(response.choices[0].text)

위의 파이썬 코드를 실행한 후 대시보드로 이동하면 아래 화면을 볼 수 있습니다. 프롬프트에 “My name is”가 표시되며 언어 모델의 응답을 확인할 수 있습니다.

Requests에 필드 추가


Requests에 필드 추가하는 것은 종종 PromptLayer 요청 ID가 필요합니다. 모든 PromptLayer 요청에는 고유한 ID가 있으며, 요청을 로깅할 때 이를 선택적으로 반환할 수 있습니다.

요청에 태그 달기
요청에 태그(pl_tags)를 추가하여 대시보드에서 요청을 검색하고 정리하는 것을 더 쉽게 만들 수 있습니다.

response = openai.Completion.create(
  engine="text-davinci-003", 
  prompt="My name is",
  pl_tags=["getting_started_example"] # 🍰 PromptLayer tags
)

print(response.choices[0].text)

아래 화면처럼 대시보드 테그 필터에서 “getting_started_example”으로 검색할 수 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다