Determinant은 확률적 AI 생성과 실행 가능한 소프트웨어 사이에 결정론적 계층으로 감사 가능 애플리케이션 언어(AAL)를 제안하는 초기 단계 실험입니다. 이 시스템은 LLM이 자연어 요구사항에서 AAL을 생성하도록 허용하며, 인간은 전통적인 컴파일러가 TypeScript 코드를 생성하기 전에 비즈니스 로직의 정확성을 검토합니다.
- AAL은 클래스나 메서드와 같은 구현 세부 사항을 피하고 애플리케이션 상태를 설명하는 객체(Object)와 행동을 설명하는 흐름(Flow)이라는 두 가지 주요 개념에 중점을 둡니다.
- 컴파일 파이프라인은 승인된 AAL을 AST로 변환하고, 시맨틱 검사 및 바인딩을 수행하며, 추가적인 LLM 개입 없이 Node.js용 결정론적 TypeScript를 출력합니다.
- 현재 기능에는 타입 필드, 조건부, 명시적 실패, 계산, 상태 변경, 흐름 구성, 화폐 타입, 그리고 영어와 중국어 방언 지원이 포함됩니다.
- 이 프로젝트는 인간이 생성된 수천 줄의 코드를 검토하는 대신 더 작고 실행 가능한 설명을 감사함으로써 AI 불확실성의 범위를 줄이는 것을 목표로 합니다.
저자는 이러한 검토 경계가 실제로 유용한지, 그리고 충분한 애플리케이션 행동을 커버하면서도 AAL이 가독성을 유지할 수 있는지에 대한 피드백을 구합니다.