Add LangChain resume screening cookbook#4
Conversation
Add a cookbook walkthrough that screens a PDF resume with three langchain-zerogpu tools: entity extraction for a candidate card, PII redaction for a shareable copy, and zero-shot classification for team routing. Wire it into the Cookbook Integrations nav and the cookbook index.
📝 WalkthroughWalkthroughA new LangChain resume screening cookbook recipe is added to the documentation. The recipe demonstrates a privacy-aware workflow that extracts candidate entities, redacts PII, and classifies resumes using ZeroGPU tools integrated through LangChain. The page is registered in both the homepage card grid and the navigation configuration. ChangesLangChain Resume Screening Cookbook Recipe
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~5 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@cookbook/langchain-resume-screening.mdx`:
- Line 7: Update the user-facing sentence that currently reads "Every one is a
blob of unstructured text..." to a clearer phrasing such as "Every resume is a
blob of unstructured text..." (or alternatively "Each one is a blob...") in the
paragraph describing resumes so the copy reads naturally and consistently.
- Around line 153-154: The examples claim routing happens after PII removal but
the classification calls still pass the raw resume text; update every call that
invokes ZeroGPUClassifyZeroShotTool (and any other classifier calls around the
mentioned sections) to use the redacted copy (e.g., redactedResume or
redacted_text variable created during the PII removal step) instead of the
original raw resume variable so the classifier scores and routing operate on the
sanitized text.
- Around line 244-245: Remove the unmatched closing MDX tags `</content>` and
`</invoke>` at the end of the document: locate the orphaned `</content>` and
`</invoke>` tokens and delete them so the file only contains properly
opened/closed MDX elements (no unmatched closing tags remain), then run the
MDX/markdown linter or preview to confirm the page renders correctly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 78206043-fd9d-4ee5-a72b-4bd2aca66111
📒 Files selected for processing (3)
cookbook/index.mdxcookbook/langchain-resume-screening.mdxdocs.json
| </content> | ||
| </invoke> |
There was a problem hiding this comment.
Remove unmatched closing tags at the end of the MDX file.
</content> and </invoke> are not opened in this document and can break page rendering/parsing.
Suggested fix
-</content>
-</invoke>📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| </content> | |
| </invoke> |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@cookbook/langchain-resume-screening.mdx` around lines 244 - 245, Remove the
unmatched closing MDX tags `</content>` and `</invoke>` at the end of the
document: locate the orphaned `</content>` and `</invoke>` tokens and delete
them so the file only contains properly opened/closed MDX elements (no unmatched
closing tags remain), then run the MDX/markdown linter or preview to confirm the
page renders correctly.
There was a problem hiding this comment.
Seems like the humans are having a chat. I'll hop back into my burrow for now. If you need me again, just tag @coderabbitai in a new comment, and I'll come hopping out!
| title: "🦜 Screen Resumes with LangChain and ZeroGPU" | ||
| --- | ||
|
|
||
| {/* Colab link: add after uploading the notebook to Colab under hello@zerogpu.ai, e.g. "You can also check this cookbook in colab [here](<colab-url>)." */} |
There was a problem hiding this comment.
Please update this as well once the colab is live.
| </content> | ||
| </invoke> |
| "routing_label": "engineering", | ||
| "routing_scores": {"engineering": 0.93, "design": 0.04, "sales": 0.02, "operations": 0.01} | ||
| } | ||
| ``` |
There was a problem hiding this comment.
Can we please replace this with actual output values.
Summary
Adds a notebook-style cookbook page that walks a reader through a privacy-aware resume screening pipeline built on the
langchain-zerogputools. From a single uploaded PDF resume it produces three outputs using three ZeroGPU tools in sequence:ZeroGPUExtractEntitiesToolextracts skills, job titles, companies, and locations into a structured candidate card.ZeroGPURedactPIIToolmasks names, emails, phones, and addresses into a shareable, GDPR/CCPA-friendly copy.ZeroGPUClassifyZeroShotToolroutes the candidate to the right team (engineering, design, sales, operations).A final section chains all three into one end-to-end
screen_resume()function.The page follows the cookbook skill (emoji section headers, canonical ZeroGPU blurb verbatim in the intro and Highlights,
getpasskey setup, example-output blocks, 🌟 Highlights recap) and usesclaude-code-csv-sanitizeras the structural reference. It mirrors a companion Colab notebook section-for-section.Changes
cookbook/langchain-resume-screening.mdx(new)docs.json: add the page to the Cookbook → Integrations groupcookbook/index.mdx: add a cookbook index cardNotes for review
{"entities": {...}}, zero-shot label→score dict,[LABEL]PII placeholders). They will be refilled from a live run.langchain-zerogpuGitHub repo and PyPI (not an internal integrations page). Once the LangChain integration page (PR Add LangChain integration page #3) merges, this could optionally be repointed to/integrations/langchain.Validation
node scripts/normalize-dashes.mjs— clean (no em/en dashes).docs.jsonparses as valid JSON.mint validatenot run locally (mint not installed in this environment); please confirm in CI.Summary by CodeRabbit