HuyDN
Phase1/HuyDN: Edit function jd2text and text2tector
9956d52
raw
history blame
1.5 kB
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain.prompts import ChatPromptTemplate, HumanMessagePromptTemplate
from langchain_core.messages import SystemMessage
from langchain_core.output_parsers import JsonOutputParser
import os
from dotenv import load_dotenv
# load the environment variables
load_dotenv()
# Define the google api key
os.environ['GOOGLE_API_KEY'] = os.getenv('GOOGLE_API_KEY')
GOOGLE_API_KEY = os.environ.get("GOOGLE_API_KEY")
# define the parser object
parser = JsonOutputParser()
def jobdes2text(jobdes):
# setup the gemini pro
llm = ChatGoogleGenerativeAI(model="gemini-pro", temperature=0.3, convert_system_message_to_human=True, api_key=GOOGLE_API_KEY)
# create the prompt template
finnal_jd_chat_template = ChatPromptTemplate.from_messages(
[
SystemMessage(
content=(
"""Return Job title, level(Fresher, Junior, Senior, ...) and Brief summary of required skills about 20 words from the job description. Use the following format: Job Title is {job title}, Level is {level}, and Brief summary of required skills is {brief summary of required skills}."""
)
),
HumanMessagePromptTemplate.from_template("{text}"),
]
)
# create the chat message
chat_message = finnal_jd_chat_template.format_messages(text=jobdes)
# create a chain
chain = llm
result = chain.invoke(chat_message)
return result.content