Skip to main content
Glama
ak8x6

TalentBridge Lebanon

by ak8x6

TalentBridge Lebanon

레바논 컴퓨터과학 졸업생을 위한 AI 커리어 매칭 에이전트. CV를 업로드하면 LLM 에이전트가 프로필을 파싱하고, 임베딩된 직업 코퍼스에서 의미적 유사성으로 역할을 검색하며, 각 역할에 대한 결정론적 기술 격차를 계산하고, 레바논 및 시니어리티 인지 신호로 재순위화한 뒤, 맞춤형 4주 업스킬링 플랜을 작성합니다 — 전체 과정이 ~15–20초 안에 완료됩니다.

라이브 데모: https://talent-bridge-lebanon.lovable.app

결과 (벤치마크 실행: 2026-08-20 15:51)

지표

평균 Precision@5

레이블이 지정된 CV 15개 기준 0.84

검색 단계

CV당 467ms (CV 파싱 + 임베딩 + 벡터 검색)

전체 에이전트 실행

LLM 단계를 포함한 종단 간 ~15–20초

인덱스 커버리지

180개 중 180개 직업 임베딩됨


이 프로젝트를 만든 이유

레바논 CS 졸업생들은 무작정 지원합니다: 채용 게시판은 키워드 기반이고, 전이 가능한 기술을 이해하지 못하며, 왜 탈락했는지 또는 다음에 무엇을 배워야 하는지 알려주지 않습니다. TalentBridge는 측정 가능한 검색 증강 에이전트로 이 루프를 닫습니다 — 모든 순위 변경은 앱에 내장된 Precision@5 하네스로 레이블이 지정된 15개 CV 벤치마크에 대해 검증됩니다.

Related MCP server: bach-jsearch

데이터셋

180개 직업 코퍼스와 레이블이 지정된 벤치마크 CV는 AI 지원으로 생성된 합성 데이터입니다. 직업 제목, 시니어리티 수준, 기술 조합은 레바논과 주변 지역의 실제 채용 공고를 모델로 하여 분포가 실제 시장을 반영하도록 했으며, 회사 이름은 가상입니다. 데이터를 생성한 이유는 두 가지입니다: 사용할 수 있는 레바논 채용 공고의 공개 데이터셋이 없고, 벤치마크는 모든 직업에 정확한 트랙 레이블을 요구하는데 스크래핑된 공고에는 그런 레이블이 없기 때문입니다.

직접적인 한계는 결과가 깨끗하고 잘 구조화된 레코드에서 입증되었다는 점입니다. 더 지저분하고 종종 불완전한 실제 채용 공고에서의 성능은 측정되지 않았습니다.

기능

  • 에이전트 파이프라인parse_cvsearch_jobsreflect_on_resultsanalyze_gapbuild_plan, 반성 기반 재시도를 포함한 결정론적 오케스트레이션.

  • 의미적 검색 — 180개 직업에 대한 384차원 임베딩, Postgres(pgvector)에서의 정확한 코사인 검색.

  • 결정론적, 환각 방지 스코어링 — 일치/누락 기술과 준비도는 모델이 아닌 코드에서 데이터베이스의 required_skills로 계산됩니다. 서술형 텍스트는 정확히 그 집합에서 파생되므로 텍스트가 목록과 모순될 수 없습니다.

  • 레바논 우선 재순위화 — 최종 점수 = 0.35·semantic + 0.20·readiness + 0.25·location + 0.15·seniority + 0.05·domain, 계층화된 위치 적합도(레바논 도시 1.0 → 원격 0.95 → MENA 0.75)와 레벨 초과 페널티 적용.

  • 내장 평가/eval은 레이블이 지정된 전체 CV 세트를 실행하고 평균 Precision@5와 평균 검색 지연 시간을 보고하며, 세션 로컬 실행 기록을 제공합니다.

  • 브라우저에서 PDF 파싱pdfjs-dist가 클라이언트 측에서 CV 텍스트를 추출합니다; 매칭이 시작되기 전까지 아무것도 저장되지 않습니다.

  • MCP 서버/mcpsearch_jobs, get_job, assess_fit, job_index_stats를 노출하여 모든 MCP 클라이언트(Claude, Cursor, …)가 코퍼스를 쿼리할 수 있습니다.

  • 다운로드 가능한 보고서 — 결과 페이지에서 화면에 표시된 것과 동일한 Markdown 보고서를 내보냅니다.

아키텍처

Browser (React 19 + TanStack Start)
  │  PDF text extraction (pdfjs-dist)
  ▼
Server functions (createServerFn, Cloudflare Workers runtime)
  ├─ parse_cv          LLM  → profile, skills (+inferred, cited), domains
  ├─ years/level       code → merged work periods, Intern/Junior/Mid
  ├─ search_jobs       embed query → match_jobs_vector() over pgvector
  ├─ reflect_on_results LLM → topical relevance check, max 1 retry (pooled results)
  ├─ analyze_gap       code → matched/missing skills, readiness %
  ├─ rerank            code → weighted blend (semantic/readiness/location/seniority/domain)
  └─ build_plan        LLM  → 4-week plan grounded in the missing skills
       ▼
Postgres (Supabase + pgvector): jobs, candidates, agent_runs, eval_cvs, eval_results

기술 스택

계층

선택

프레임워크

TanStack Start v1 (React 19, Vite 7, Cloudflare Workers에서 SSR)

스타일링

Tailwind CSS v4 + shadcn/ui

데이터베이스

pgvector를 사용하는 Postgres (Supabase / Lovable Cloud)

LLM

Lovable AI Gateway를 통해 제공되는 google/gemini-2.5-flash (+ 추론이 많은 단계용 gemini-2.5-pro)

임베딩

openai/text-embedding-3-small, 384차원

에이전트 상호운용

/mcp의 Model Context Protocol 서버

저장소 구조

src/routes/            file-based routes: / (run agent), /results, /admin, /eval, /mcp
src/lib/agent.server.ts   the agent: parsing, retrieval, gap analysis, re-ranking, planning
src/lib/agent.config.ts   single source of truth for models and prompt guardrails
src/lib/skill-match.ts    canonical skill normalisation + shared matched/missing logic
src/lib/eval.server.ts    Precision@5 benchmark harness across the labelled CV set
src/lib/mcp/             MCP server and its four tools
supabase/migrations/     full schema: tables, RLS, grants, match_jobs_vector()
data/                    exported datasets (180 jobs; 15 labelled benchmark CVs + 2 demo profiles)

페이지

경로

용도

/

벤치마크 CV를 선택하거나 자신의 CV를 업로드한 후 에이전트를 실행합니다.

/results

파싱된 프로필, 매치 %가 포함된 상위 5개 매치, 매치별 격차 분석, 4주 플랜, 보고서 다운로드. 세션 전용 — 방문자는 다른 사람의 실행 결과를 볼 수 없습니다.

/admin

직업 인덱스: CSV 가져오기, 임베딩 커버리지, 코퍼스 무결성 검사.

/eval

레이블이 지정된 모든 CV에 대해 에이전트를 실행하고 평균 Precision@5와 평균 검색 지연 시간을 보고합니다.

평가

정답(ground truth)은 eval_cvs.relevant_job_ids에 있습니다. 하네스는 각 CV에 대해 방문자가 사용하는 것과 정확히 동일한 파이프라인(재순위화 포함)을 실행하고 Precision@5 = |top5 ∩ relevant| / 5를 계산한 다음, CV별 검색 지연 시간과 함께 세트 전체에 대해 평균을 냅니다. 관련성은 트랙 호환 가능한 시니어리티로 정의되므로 순위 변경은 추측이 아닌 검증을 거칩니다.

로컬 실행

git clone https://github.com/ak8x6/talent-bridge-lebanon.git
cd talent-bridge-lebanon
bun install
bun run dev            # http://localhost:8080

npm을 선호하는 경우:

npm install
npm run dev            # http://localhost:8080

환경 변수 (.env가 필요하며, 커밋된 것은 없습니다):

VITE_SUPABASE_URL=...
VITE_SUPABASE_PUBLISHABLE_KEY=...
LOVABLE_API_KEY=...        # server-side only: LLM + embedding gateway

데이터베이스 설정: supabase/migrations/*.sql을 순서대로 적용하고, /admin을 통해 data/jobs.csv를 가져온 다음 Generate embeddings를 클릭합니다. 벤치마크를 활성화하려면 data/eval_cvs.csveval_cvs에 로드합니다.

보안 참고 사항

  • 클라이언트 코드에 비밀 정보 없음; 게이트웨이 키는 서버 함수 핸들러 내에서만 읽습니다.

  • 모든 공개 테이블에 행 수준 보안과 명시적 권한 부여.

  • track 열은 검색, UI 또는 MCP 도구를 통해 노출되지 않습니다 — 평가 레이블로만 사용됩니다.

  • 프롬프트는 이름에서 성별을 추론하는 것을 금지합니다; 생성된 모든 텍스트는 성중립적입니다.

라이선스

MIT © 2026 Ahmad Kassem — LICENSE 참조.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server that exposes job search data from multiple boards, enabling clients to query and manage job listings via natural language.
    7
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for accessing Jsearch API to search jobs, get job details, and retrieve salary estimates.
    4
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for the WorkLink Partner API that enables searching live job vacancies and tenders in Syria.
    19
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    GetJobzi MCP server for job search, application tracking, and career forecasting.

View all related MCP servers

Related MCP Connectors

  • GetJobzi MCP server for job search, application tracking, and career forecasting.

  • MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.

  • MCP server for AI access to Swagger by SmartBear.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ak8x6/talent-bridge-lebanon'

If you have feedback or need assistance with the MCP directory API, please join our Discord server