LLM tooling at Thales SIX GTS
AI Software Engineer Intern · embedded software team for defence aeronautics radiocommunications
- Period
- Apr – Sep 2026
- My part
- Sole developer, end to end, of both tools: design, implementation, benchmarking, CI/CD, packaging, documentation and deployment.
- Stack
- Python
- Typer
- NiceGUI
- Pydantic
- pytest
- mypy
- ruff
- Jenkins
- Docker
- Mistral models via an OpenAI-compatible API
Sole developer of two LLM tools for defence avionics software: a requirements-review analyser benchmarked at up to 93% agreement with human experts, and prbot, an automated pull-request review CLI adopted as the team's implementation.
Context
Software under DO-178C, the airborne software certification standard, has to be traceable, reviewable and justifiable line by line. That shaped every technical decision.
EARS Requirements Analyser
- A Python tool (CLI + web UI) that reviews software requirements documents before formal peer review. It grades every requirement against the 6 EARS syntax patterns and 5 writing-quality criteria using Thales' internal LLM gateway, and proposes corrections.
- Built the benchmark behind it: a ~100-requirement human-annotated ground truth and an asymmetric penalty scheme that treats a missed defect as worse than a false alarm. Evaluated 6 LLMs across 5 batch sizes and reached up to 93% agreement with human experts. Found a batch-size trade-off in LLM grading (false negatives rise as false positives fall) that informed production configuration.
prbot
- A Python CLI for LLM-powered code review on pull requests, with inline comments anchored to exact diff lines, ticket context and a strict JSON output contract. It consolidated 3 existing prototypes into the team's adopted implementation.
Shipping both
- ~380 tests, Jenkins CI/CD, wheel packaging, versioned prompts traceable in every report, and a pipeline stage engineered to never break the team's build.