File size: 1,452 Bytes
df97380
 
 
 
 
 
 
 
 
3094c8c
df97380
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import os

from langchain import LLMChain
from langchain.chains import SequentialChain
from langchain.chat_models import ChatOpenAI
from langchain.prompts import ChatPromptTemplate


def preprocess_resume(llm, resume) -> SequentialChain:
    """We mold the resume to the format of the vacancy to increase the chances of good search results."""

    template_get_skills_intersection = """

      ```
      {resume}
      ```

    Can you summarize the above resume in the template below and fill in eveything that is delimited by '<' '>'?
    Return only the filled in template nothing else.
      
    position: < the job name or role >
    location: < where does the person live >
    description: < the description or the person's job or role and description of it's experience. >
    profile: < can you describe the sector the person is working in >
    competences: < can you describe some hard skills of the person>
    """

    prompt_get_skills_intersection = ChatPromptTemplate.from_template(
        template=template_get_skills_intersection
    )
    skills_match_chain = LLMChain(
        llm=llm,
        prompt=prompt_get_skills_intersection,
        output_key="resume_preprocess",
    )

    chain = SequentialChain(
        chains=[skills_match_chain],
        input_variables=["resume"],
        output_variables=[
            skills_match_chain.output_key,
        ],
        verbose=False,
    )
    return chain({"resume": resume})