■ dumpd/load 함수를 사용해 RunnableSequence 객체를 딕셔너리로 직렬화/역직렬화하는 방법을 보여준다.
※ OPENAI_API_KEY 환경 변수 값은 .env 파일에 정의한다.
▶ 예제 코드 (PY)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
import pickle from dotenv import load_dotenv from langchain_core.prompts import PromptTemplate from langchain_openai import ChatOpenAI from langchain_core.load import dumpd from langchain_core.load import load load_dotenv() promptTemplate = PromptTemplate.from_template("{fruit}의 색상이 무엇입니까?") chatOpenAI = ChatOpenAI(model = "gpt-4o-mini", temperature = 0) runnableSequence1 = promptTemplate | chatOpenAI dumpDictionary1 = dumpd(runnableSequence1) with open("fruit_chain.pkl", "wb") as bufferedWriter: pickle.dump(dumpDictionary1, bufferedWriter) with open("fruit_chain.pkl", "rb") as bufferedReader: dumpDictionary2 = pickle.load(bufferedReader) runnableSequence2 = load(dumpDictionary2) responseAIMessage = runnableSequence2.invoke({"fruit" : "사과"}) print(responseAIMessage.content) """ 사과의 색상은 다양합니다. 일반적으로 빨간색, 초록색, 노란색 등이 있으며, 일부 사과는 이들 색상이 혼합된 형태로도 나타납니다. 예를 들어, 빨간 사과는 진한 빨간색에서부터 연한 빨간색까지 다양하고, 초록 사과는 밝은 초록색에서부터 어두운 초록색까지 있습니다. 또한, 노란 사과는 밝은 노란색을 띠기도 합니다. 사과의 품종에 따라 색상이 다르게 나타날 수 있습니다. """ |
※ pip install python-dotenv langchain-openai 명령을 실행했다.