LangChain | PromptTemplate_2

Ruah·2024년 11월 2일

함수와 함께 하는 동적 프롬프트 생성

함수를 활용하여 동적으로 변하는 데이터를 프롬프트에 삽입하는 방법

함수를 partial_variables에 사용하기

현재 날짜를 반환하는 함수

from datetime import datetime

#현재 날짜 반환 함수
def get_today():
	return datetime.now().strftime("%b %d")

위 함수를 partial-variables에 사용하여 프롬프트를 생성

prompt = PromptTemplate(
	template = "오늘의 날짜는 {today}입니다. 오늘이 생일인 유명 팝가수 {n}명을 나열하세요. 생년월일도 함께 표기하세요.",
    input_variables = {"today": get_today}
)

formatted_prompt = prompt.format(n=5)
print(formatted_prompt)
# 출력 : 오늘의 날짜는 Nov 02입니다. 오늘이 생일인 유명 팝가수 5명을 나열해주세요. 생년월일도 함께 표기하세요.
  • LLM과 연결하여 결과를 얻는 것도 가능하다.

파일로부터 프롬프트 템플릿 불러오기

외부 파일로부터 프롬프트 템플릿 불러와 사용하는 방법.

  • 외부 파일로 프롬프트를 관리하면 재사용성과 유지보수성이 높아진다.

load_prompt()

예시 :
prompts 폴더에 fruit_color.yaml 파일이 있다.

_type: "prompt"
template: "{fruit}의 색깔이 뭐야?"
input_variables: ["fruit"]

이 파일을 불러와 프롬프트를 생성

from langchain_core.prompts import load_prompt

prompt = load_prompt("prompts/fruit_color.yaml", encoding="utf-8")
formatted_prompt = prompt.format(fruit = "사과")

print(formatted_prompt)
# 출력 : 사과의 색깔이 뭐야?
profile
집요한 주니어 개발자의 호되게 당했던 기록

0개의 댓글