함수를 활용하여 동적으로 변하는 데이터를 프롬프트에 삽입하는 방법
현재 날짜를 반환하는 함수
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명을 나열해주세요. 생년월일도 함께 표기하세요.
외부 파일로부터 프롬프트 템플릿 불러와 사용하는 방법.
- 외부 파일로 프롬프트를 관리하면 재사용성과 유지보수성이 높아진다.
예시 :
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)
# 출력 : 사과의 색깔이 뭐야?