DatetimeOutputParser 는 LLM의 출력을 datetime 형식으로 파싱하는 데 사용할 수 있습니다.
# LangSmith 추적을 설정합니다. https://smith.langchain.com
# !pip install langchain-teddynote
from langchain_teddynote import logging
# 프로젝트 이름을 입력합니다.
logging.langsmith("CH03-OutputParser")참고
| 형식 코드 | 설명 | 예시 |
|---|---|---|
| %Y | 4자리 연도 | 2024 |
| %y | 2자리 연도 | 24 |
| %m | 2자리 월 | 07 |
| %d | 2자리 일 | 04 |
| %H | 24시간제 시간 | 14 |
| %I | 12시간제 시간 | 02 |
| %p | AM 또는 PM | PM |
| %M | 2자리 분 | 45 |
| %S | 2자리 초 | 08 |
| %f | 마이크로초 (6자리) | 000123 |
| %z | UTC 오프셋 | +0900 |
| %Z | 시간대 이름 | KST |
| %a | 요일 약어 | Thu |
| %A | 요일 전체 | Thursday |
| %b | 월 약어 | Jul |
| %B | 월 전체 | July |
| %c | 전체 날짜와 시간 | Thu Jul 4 14:45:08 2024 |
| %x | 전체 날짜 | 07/04/24 |
| %X | 전체 시간 | 14:45:08 |
from langchain.output_parsers import DatetimeOutputParser
from langchain.prompts import PromptTemplate
from langchain_openai import ChatOpenAI
# 날짜 및 시간 출력 파서
output_parser = DatetimeOutputParser()
output_parser.format = "%Y-%m-%d"
# 사용자 질문에 대한 답변 템플릿
template = """Answer the users question:\n\n#Format Instructions: \n{format_instructions}\n\n#Question: \n{question}\n\n#Answer:"""
prompt = PromptTemplate.from_template(
template,
partial_variables={
"format_instructions": output_parser.get_format_instructions()
}, # 지침을 템플릿에 적용
)
# 프롬프트 내용을 출력
prompt체인을 생성합니다.
# Chain 을 생성합니다.
chain = prompt | ChatOpenAI() | output_parser
# 체인을 호출하여 질문에 대한 답변을 받습니다.
output = chain.invoke({"question": "Google 이 창업한 연도"})결과를 출력합니다.