Spaces:
Sleeping
Sleeping
acarey5 commited on
Commit ·
a86dac5
1
Parent(s): 34a20cc
update
Browse files- README.md +4 -1
- app.py +1 -1
- src/resume/profile_builder.py +1 -1
README.md
CHANGED
|
@@ -17,7 +17,7 @@ AI Career Fair Matcher helps students prioritize career fair companies by analyz
|
|
| 17 |
- Accepts a resume PDF.
|
| 18 |
- Uses a built-in company CSV and optionally accepts a user-uploaded CSV.
|
| 19 |
- Extracts resume text and builds a structured profile JSON.
|
| 20 |
-
-
|
| 21 |
- Detects ATS providers from company careers URLs.
|
| 22 |
- Fetches jobs using requests first and Playwright fallback.
|
| 23 |
- Scores jobs with explainable rules.
|
|
@@ -57,6 +57,9 @@ AI Career Fair Matcher helps students prioritize career fair companies by analyz
|
|
| 57 |
`pip install -r ../requirements.txt`
|
| 58 |
2. Optional but recommended for Playwright fallback:
|
| 59 |
`playwright install chromium`
|
|
|
|
|
|
|
|
|
|
| 60 |
|
| 61 |
## Output
|
| 62 |
- Ranked companies
|
|
|
|
| 17 |
- Accepts a resume PDF.
|
| 18 |
- Uses a built-in company CSV and optionally accepts a user-uploaded CSV.
|
| 19 |
- Extracts resume text and builds a structured profile JSON.
|
| 20 |
+
- Uses AI resume parsing through Hugging Face InferenceClient with fallback parsing.
|
| 21 |
- Detects ATS providers from company careers URLs.
|
| 22 |
- Fetches jobs using requests first and Playwright fallback.
|
| 23 |
- Scores jobs with explainable rules.
|
|
|
|
| 57 |
`pip install -r ../requirements.txt`
|
| 58 |
2. Optional but recommended for Playwright fallback:
|
| 59 |
`playwright install chromium`
|
| 60 |
+
3. For AI resume parsing, set in `.env`:
|
| 61 |
+
`HF_TOKEN=...`
|
| 62 |
+
`HF_MODEL=meta-llama/Llama-3.1-8B-Instruct`
|
| 63 |
|
| 64 |
## Output
|
| 65 |
- Ranked companies
|
app.py
CHANGED
|
@@ -129,7 +129,7 @@ with gr.Blocks(title="AI Career Fair Matcher") as demo:
|
|
| 129 |
|
| 130 |
use_ai_parser_input = gr.Checkbox(
|
| 131 |
value=True,
|
| 132 |
-
label="Use AI Resume Parser (
|
| 133 |
)
|
| 134 |
|
| 135 |
max_companies_input = gr.Slider(
|
|
|
|
| 129 |
|
| 130 |
use_ai_parser_input = gr.Checkbox(
|
| 131 |
value=True,
|
| 132 |
+
label="Use AI Resume Parser (HF_TOKEN)",
|
| 133 |
)
|
| 134 |
|
| 135 |
max_companies_input = gr.Slider(
|
src/resume/profile_builder.py
CHANGED
|
@@ -174,7 +174,7 @@ def _parse_resume_with_ai(resume_text: str) -> Optional[ResumeProfile]:
|
|
| 174 |
if not token:
|
| 175 |
return None
|
| 176 |
|
| 177 |
-
model = os.getenv("HF_MODEL", "
|
| 178 |
|
| 179 |
schema_str = json.dumps(SCHEMA_TEMPLATE, indent=2)
|
| 180 |
system_prompt = (
|
|
|
|
| 174 |
if not token:
|
| 175 |
return None
|
| 176 |
|
| 177 |
+
model = os.getenv("HF_MODEL", "openai/gpt-oss-120b").strip()
|
| 178 |
|
| 179 |
schema_str = json.dumps(SCHEMA_TEMPLATE, indent=2)
|
| 180 |
system_prompt = (
|