Oracle3
Oracle3: 예측시장 거래 엔진·MCP 서버
Java·Spring Boot·Angular·Claude AI 기반의 기업용 마이크로서비스 플랫폼으로 지능형 보험 청구 처리 지원
Production-grade microservices platform built with Java, Spring Boot, Angular, and Claude AI for intelligent insurance claims processing.
금융Java · TypeScriptGitHub @Pulkit2306온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기AI-powered insurance claims management platform — 6 Spring Boot microservices, Angular 18, Claude AI (RAG + fraud detection), Kafka, Elasticsearch, PostgreSQL + pgvector. One-command Docker deployment.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Insurance companies process millions of claims annually, yet most still rely on:
ClaimsAI solves these problems by bringing AI, event-driven architecture, and semantic search into a unified platform — the same patterns used at companies like Desjardins, Intact Financial, and Coveo.
| Feature | Description |
|---|---|
| AI Claims Chat | Natural language Q&A about claims, policies, and documents powered by Claude AI with RAG pipeline |
| Fraud Detection | AI-driven fraud scoring (0.0–1.0) with red flag identification on every new claim |
| Smart Search | Coveo-style semantic search with fuzzy matching, relevance ranking across all claims |
| Real-time Events | Kafka-driven event pipeline — claim creation triggers AI analysis + search indexing automatically |
| Claims Lifecycle | Full workflow: Submit → AI Triage → Adjuster Review → Investigation → Approve/Deny → Settle |
| Role-Based Access | Four roles (Policyholder, Adjuster, Underwriter, Admin) with JWT + OAuth2 security |
| Audit Trail | MongoDB-backed audit logging for compliance and regulatory requirements |
| Monitoring | Prometheus + Grafana dashboards, Elasticsearch + Kibana for log analytics |
┌──────────────────────────────────────────────────────────────┐
│ Angular 18 Frontend (:4200) │
│ Dark Glass UI • Material • Lazy Loading • RxJS │
└──────────────────────────┬───────────────────────────────────┘
│ nginx reverse proxy
┌──────────────────────────▼───────────────────────────────────┐
│ Spring Cloud API Gateway (:8080) │
│ JWT Validation • Route Management │
└───┬────────┬────────┬────────┬────────┬──────────────────────┘
│ │ │ │ │
┌───▼───┐┌───▼───┐┌───▼───┐┌───▼───┐┌───▼───┐
│ Auth ││Policy ││Claims ││ AI ││Search │
│ :8081 ││ :8082 ││ :8083 ││ :8084 ││ :8085 │
│ ││ ││ ││ ││ │
│ JWT ││ CRUD ││Kafka ││ RAG ││ ES │
│ BCrypt││ JPA ││Events ││Claude ││Mongo │
└───┬───┘└───┬───┘└───┬───┘└───┬───┘└───┬───┘
│ │ │ ┌───┘ │
▼ ▼ ▼ ▼ ▼
┌─────────────────────────────────────────────┐
│ PostgreSQL │ Apache Kafka │ MongoDB │
│ + pgvector │ (Events) │ (Audit) │
│ │ │ │
│ Elasticsearch │ Prometheus │ Grafana │
│ (Search) │ (Metrics) │ (Dash) │
└─────────────────────────────────────────────┘
| Technology | Purpose |
|---|---|
| Java 17 | Language runtime |
| Spring Boot 3.3 | Microservice framework |
| Spring Cloud Gateway | API Gateway with reactive routing |
| Spring Security | JWT + OAuth2 authentication |
| Spring AI + Claude | LLM integration for chat, summarization, fraud detection |
| Spring Data JPA | ORM with Hibernate |
| Apache Kafka | Event-driven messaging between microservices |
| PostgreSQL + pgvector | Relational DB + vector embeddings for RAG |
| MongoDB | Document store for audit logs |
| Elasticsearch | Full-text semantic search with relevance ranking |
| ONNX Transformers | Local embedding model (all-MiniLM-L6-v2) for vector store |
| Technology | Purpose |
|---|---|
| Angular 18 | SPA framework with standalone components |
| Angular Material | UI component library |
| RxJS | Reactive state management |
| SCSS | Dark glass-morphism theme with animations |
| Technology | Purpose |
|---|---|
| Docker + Docker Compose | One-command containerized deployment |
| nginx | Frontend reverse proxy |
| Prometheus + Grafana | Metrics and monitoring dashboards |
| Kibana | Elasticsearch visualization |
| Multi-stage Docker builds | Optimized container images |
# 1. Clone the repository
git clone https://github.com/Pulkit2306/ClaimsAI.git
cd ClaimsAI
# 2. Start everything (builds + runs all services)
docker-compose up --build
# 3. Seed sample data (in a separate terminal)
bash scripts/seed-data.sh
| Service | URL |
|---|---|
| Frontend | http://localhost:4200 |
| API Gateway | http://localhost:8080 |
| Grafana | http://localhost:3000 (admin/admin) |
| Kibana | http://localhost:5601 |
| Prometheus | http://localhost:9090 |
| Role | Password | |
|---|---|---|
| Admin | [email protected] | password123 |
| Adjuster | [email protected] | password123 |
| Underwriter | [email protected] | password123 |
For active development, run infrastructure in Docker and services locally:
# Start databases and messaging only
docker-compose up postgres mongodb kafka zookeeper elasticsearch -d
# Build all modules
mvn clean install -DskipTests
# Run each service in a separate terminal
cd auth-service && mvn spring-boot:run
cd api-gateway && mvn spring-boot:run
cd policy-service && mvn spring-boot:run
cd claims-service && mvn spring-boot:run
cd ai-service && mvn spring-boot:run
cd search-service && mvn spring-boot:run
# Frontend
cd frontend && npm install && ng serve
| Service | Port | Responsibilities |
|---|---|---|
| API Gateway | 8080 | Request routing, JWT validation, CORS, rate limiting |
| Auth Service | 8081 | User registration, login, BCrypt hashing, JWT token generation |
| Policy Service | 8082 | CRUD for insurance policies and customers (Auto, Home, Health, Life, Commercial, Travel) |
| Claims Service | 8083 | Claims lifecycle management, Kafka event publishing on create/update/status change |
| AI Service | 8084 | RAG pipeline with pgvector, fraud detection, claim summarization, document Q&A, WebSocket streaming |
| Search Service | 8085 | Elasticsearch multi-match search with fuzziness, Kafka consumer for auto-indexing, MongoDB audit trail |
ClaimsAI integrates Spring AI with a large language model for three core capabilities:
Ask natural language questions about claims, policies, and coverage. The RAG pipeline embeds the query using a local ONNX model (all-MiniLM-L6-v2), retrieves the top-5 document chunks from pgvector above a cosine similarity threshold of 0.7, and injects them into the system prompt before calling the LLM. If no chunks clear the threshold, the service returns a clear "not enough information" message without calling the LLM — preventing hallucination on empty context (0b7e229).
Every new claim triggers a Kafka event consumed by the AI service. Claude analyzes the claim for fraud indicators and returns a risk score (0.0–1.0), red flags, and a recommendation (Approve / Investigate / Deny).
One-click AI-generated summaries for adjusters — extracts key facts, damage assessment, and recommended next steps from claim descriptions and supporting documents.
Demo Mode: The AI features work without an API key using intelligent mock responses. Set
ANTHROPIC_API_KEYin.envfor live Claude-powered responses.
Claims Service AI Service Search Service
│ │ │
│──── claim.created ────────────▶│ Fraud Analysis │
│ │ │
│──── claim.created ────────────────────────────────────▶│ Index to ES
│ │ Audit to MongoDB
│──── claim.status.changed ─────────────────────────────▶│ Re-index
│ │ Audit log
│──── claim.updated ───────────────────────────────────▶│ Update index
Kafka topics: claim.created, claim.updated, claim.status.changed
| Variable | Default | Description |
|---|---|---|
ANTHROPIC_API_KEY | demo-mode | Claude API key for live AI (optional) |
POSTGRES_USER | postgres | Database username |
POSTGRES_PASSWORD | postgres | Database password |
JWT_SECRET | (built-in) | JWT signing secret |
Copy .env.example to .env to customize.
claims-management-platform/
├── api-gateway/ # Spring Cloud Gateway
├── auth-service/ # Authentication & JWT
├── policy-service/ # Policy & Customer management
├── claims-service/ # Claims lifecycle + Kafka
├── ai-service/ # RAG, Fraud Detection, Summarization
├── search-service/ # Elasticsearch + MongoDB audit
├── common/ # Shared DTOs, enums, exceptions, JWT util
├── config-server/ # Spring Cloud Config (centralized config)
├── frontend/ # Angular 18 SPA
│ ├── src/app/core/ # Services, guards, interceptors, models
│ ├── src/app/features/ # Auth, Dashboard, Claims, Policies, AI Chat, Search
│ └── src/app/shared/ # Navbar, pipes, shared components
├── scripts/ # Data seeding scripts
├── docker-compose.yml # One-command full stack deployment
├── Dockerfile.service # Multi-stage build for Java services
├── prometheus.yml # Prometheus scrape config
└── init-databases.sql # PostgreSQL database initialization
The UI features a modern dark glass-morphism design with gradient accents, animated transitions, and responsive layouts.
The project includes a full test suite covering unit, integration, and frontend tests.
# All services at once
mvn test
# Individual service
cd auth-service && mvn test
cd policy-service && mvn test
cd claims-service && mvn test
cd ai-service && mvn test
Testcontainers spins up real PostgreSQL and Kafka containers automatically — no manual setup needed.
cd claims-service && mvn test -Dgroups=integration
cd frontend && ng test
# Headless (CI)
cd frontend && ng test --watch=false --browsers=ChromeHeadless
| Layer | Framework | What's Covered |
|---|---|---|
| Auth Service | JUnit 5 + Mockito | AuthService (register, login, role assignment), JwtUtil (token generation, validation, expiry) |
| Policy Service | JUnit 5 + Mockito | PolicyService (CRUD, soft delete, customer validation) |
| Claims Service | JUnit 5 + Mockito | ClaimService (lifecycle, stats aggregation, fraud threshold query) |
| Claims Service | Testcontainers | Full integration against real PostgreSQL + Kafka (create, status update, pagination, adjuster assignment) |
| AI Service | JUnit 5 + Mockito | RagService (demo mode routing, session persistence), FraudDetectionService (JSON parsing, fallback on AI failure) |
| Angular | Jasmine + Karma | AuthService, ClaimService (all HTTP endpoints), ClaimListComponent (render, pagination, fraud gradient) |
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)This project is open source and available under the MIT License.