General discussion of OpenCATS

Moderators: RussH, cptr13

Forum rules: Just remember to play nicely once you walk through the door. You can disagree with us, or any other commenters in this forum, but keep comments directed to the topic at hand.
User avatar
By RussH
#8224
Hi folks, apologies, I don't currently have a great deal of time due to some personal issues.

Issues with the PHP 8.2 branch currently;
- searchd config isn't amended to be php 8.2 compatible yet, it's pretty standalone so shouldn't actually be a huge effort.
- backup configs needed to be reworked so the installer could import a saved config, this is completed but not committed yet. If you're manually using mysqldump for backups this isn't really an issue, and isn't a showstopper. Personally, I have never used the built-in backup/restore functionality.

LLM - I assume you would want an LLM to run locally (or use an cloud API) and possibly e.g. find good matches for job roles / resume's? This would be relatively expensive as you'd need to submit your resume's and job roles so it could parse them all. I assume you'd apply some criteria to narrow the roles / resume's so you're not submitting e.g. 10 years of resume's in opencats to the LLM.
It's be pretty easy really, but largely depends on what you're trying to achieve as none of the processing would happen within OpenCATS - so do some standalone queries using a local llm or an api, see what you want to do, then just add a option for the api key in the admin section, and amend the modules to show the additional information, it'd just be an api query. I'd have concerns around information security if you're uploading all that personal data though.

So what are the 'LLM Integrations' you want/need?


I asked an LLM and it recommends these;
Here’s a top-ten list with an eye on practical, near-term functionality that could bolt onto OpenCATS:

1. Resume Parsing & Enrichment

LLMs can extract structured candidate data (skills, experience, education) more accurately than regex-based parsers.

Add inferred skills (e.g., seeing "led Docker deployments" → tag DevOps).

Functionality for OpenCATS: Replace the current CV parser with an LLM API that feeds into candidate records with JSON output.

2. Semantic Candidate Search

Recruiters often type “Java backend with AWS” but the database holds “Spring Boot / EC2.”

LLMs can map recruiter queries into semantically related matches, bridging keyword mismatches.

In OpenCATS: Enhance DatabaseSearch to allow “semantic mode” alongside keyword/boolean.

3. Job Description Drafting

Recruiters spend time rewriting the same role templates.

LLMs can auto-generate a clean, engaging JD based on a few bullet points.

In OpenCATS: New “Generate JD” button when creating a JobOrder.

4. Candidate Shortlisting & Summarisation

Instead of scanning 30 resumes, get a ranked shortlist with explanations.

LLMs can summarise why each candidate fits or doesn’t.

In OpenCATS: A “LLM fit score” column in DataGrids for quick triage.

5. Automated Candidate Emails

Cold outreach, interview scheduling, or rejections all need a human-sounding but consistent voice.

LLMs can draft personalised emails at scale.

In OpenCATS: Template engine could plug into PHPMailer, with recruiter review before sending.

6. Interview Question Generation

Given a job spec, generate tailored behavioural and technical interview questions.

In OpenCATS: On the JobOrder page, “Suggest Interview Pack.”

7. Sentiment & Tone Analysis


Cover letters and email replies reveal enthusiasm, caution, or mismatch.

LLMs can flag tone and suggest recruiter responses.

In OpenCATS: Add sentiment flags to Candidate Activity logs.

8. Bias Detection

LLMs can flag potentially biased language in job descriptions (e.g. “rockstar,” “digital native”) and suggest inclusive alternatives.

In OpenCATS: A JD linting tool before posting to the careers site.

9. Duplicate & Similar Candidate Detection

Current deduping relies on email or fuzzy string matching.

LLM embeddings can cluster candidates with similar experience even if CV wording differs.

In OpenCATS: A “Possible Duplicates” panel powered by embeddings.

10. Recruiter Insights Dashboard

Summarise pipeline activity: “5 new candidates this week in Engineering, average response rate 34%, top source: LinkedIn.”

LLMs can turn logs into narrative insights.

In OpenCATS: A recruiter’s weekly digest, plain English + charts.

The kicker for OpenCATS

The integration pattern would likely be:

Call out to an LLM API (OpenAI, Anthropic, local Ollama, etc.).

Parse JSON back into PHP arrays.

Store results in existing tables or as extensions (custom fields, new datagrids).

Keep recruiter “human in the loop” — i.e., suggest, don’t auto-apply.
User avatar
By RussH
#8225
I'd probably tend towards running a local model for some of this as it's more interesting, but from a business standpoint I assume you'd prefer to use a cloud service / api for easy setup & simplicity

I'd probably tend towards running a local model fo[…]

opencats Installation

Hello, What is the best web host to use for ope[…]

Best Install Platform

I was trying docker setup, initially tried getting[…]

Install questions

https://gbwhata.net/ is a modified version of th[…]