| | import gradio as gr |
| | import openai |
| | import os |
| | from dotenv import load_dotenv |
| | from collections import Counter |
| | import time |
| |
|
| | |
| | load_dotenv() |
| | openai.api_key = os.getenv("OPENAI_API_KEY") |
| |
|
| | |
| | keywords = ["teacher", "educator", "childcare specialist", "afterschool specialist", |
| | "youth development", "babysitter", "daycare assistant", |
| | "daycare aide", "youth program"] |
| |
|
| | def count_keywords(text): |
| | text = text.lower() |
| | keyword_counts = Counter() |
| | for keyword in keywords: |
| | keyword_counts[keyword] = text.count(keyword) |
| | return keyword_counts |
| |
|
| | def complete_prompt(prompt): |
| | try: |
| | response = openai.Completion.create( |
| | model="text-davinci-003", |
| | prompt=prompt, |
| | temperature=0, |
| | max_tokens=824, |
| | top_p=1, |
| | frequency_penalty=0, |
| | presence_penalty=0 |
| | ) |
| | completion = response.choices[0].text.strip() |
| | keyword_counts = count_keywords(prompt + completion) |
| | return completion, keyword_counts |
| | except Exception as e: |
| | return str(e), {} |
| |
|
| | |
| | iface = gr.Interface( |
| | fn=complete_prompt, |
| | inputs=gr.inputs.Textbox(lines=20, placeholder="Enter the prompt here..."), |
| | outputs=["text", "json"], |
| | title="ResumePAL", |
| | description="Developed by Alex Leschik", |
| | ) |
| |
|
| | |
| | iface.launch() |
| |
|