DSPy 설정하기

DSPy 설정하기 (Setting up DSPy)

DSPy는 pip install dspy 로 설치하거나, 가상 환경에 uv add dspy 로 추가할 수 있어요. DSPy는 Python 3.10 이상 환경에서 동작합니다.

출처: 문서

본문

언어 모델 연결하기

DSPy는 언어 모델에 dspy.LM 클래스로 연결해요. 언어 모델을 설정하려면 "provider/model" 형식의 문자열과 API 키를 제공하면 됩니다:

import dspy

# 키를 명시적으로 전달...
lm = dspy.LM("openai/gpt-5-nano", api_key="YOUR_OPENAI_API_KEY")
dspy.configure(lm=lm)

내부적으로 DSPy는 LiteLLM 라이브러리를 사용해 추론 공급자(inference provider)들을 하나의 형식으로 정규화해요. 덕분에 LiteLLM 모델 문자열만 제공하면 거의 모든 모델과 그 공급자에 연결할 수 있습니다. 전체 목록은 여기에서 검색할 수 있어요.

이번 튜토리얼에서도 "openai/gpt-5-nano" 모델 문자열과 OpenAI API 키를 Anthropic, Google, OpenRouter 등의 옵션으로 바꿔 쓸 수 있어요. 아래의 모든 예제는 코드 변경 없이 어떤 LiteLLM 모델 문자열이든 그대로 동작합니다.

LM을 하나 만든 뒤 dspy.configure(lm=lm) 을 호출하면, 이 LM이 프로세스 안의 모든 DSPy 프로그램에 대한 기본 공급자로 설정돼요. 이렇게 하면 LM이 전역(global)으로 설정되지만, 더 세밀한 제어가 필요할 때는 dspy.context 로 선택적으로 덮어쓸 수 있습니다.

모델을 직접 호출해서 제대로 동작하는지 확인해 볼게요:

messages = [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "What is the capital of France?"
    }
]

print(lm(messages = messages))

이 코드는 다음과 같이 반환합니다:

['The capital of France is Paris.']

LM이 설정됐으니 이제 첫 번째 프로그램을 작성할 준비가 됐어요.

다음: 첫 번째 프로그램 →

더 알아보기 (Learn more)