AI 아키텍처
GitLab Duo AI 기능이 공유하는 AI 아키텍처와 AI Gateway, Code Suggestions, 지원 기술에 대해 설명합니다.
이 문서는 GitLab Duo AI 기능이 공유하는 아키텍처를 설명합니다. 이 아키텍처의 역사적 배경 및 목표에 대해서는 AI Gateway 아키텍처 설계 문서 를 참고하세요. 소개 # 다음 다이어그램은 GitLab의 여러 컴포넌트가 어떻게 상호작용하는지 간략하게 보여줍니다. PlantUML 다이어그램 (30줄) 소스 코드 보기 @startuml !theme cloudscape-design skinparam componentStyle rectangle package Clients { [IDEs, Code Editors, Language Server] as IDE [GitLab Web Frontend] as GLWEB } [GitLab.com] as GLCOM [Self-Managed/Dedicated] as SMI [CustomersDot API] as CD [AI Gateway] as AIGW package Models { [3rd party models (Anthropic,VertexAI)] as THIRD [GitLab Native Models] as GLNM } Clients -down-> GLCOM : REST/Websockets Clients -down-> SMI : REST/Websockets Clients -down-> AIGW : code completion direct connection SMI -right-> CD : License + JWT Sync GLCOM -down-> AIGW : Prompts + Telemetry + JWT (REST) SMI -down-> AIGW : Prompts + Telemetry + JWT (REST) AIGW -up-> GLCOM : JWKS public key sync AIGW -up-> CD : JWKS public key sync AIGW -down-> Models : prompts @enduml AI 추상화 계층 - 모든 GitLab 인스턴스(Self-Managed, GitLab.com 등)에는 AI 추상화 계층 이 포함되어 있으며, 이는 모놀리스에서 새로운 AI 기능을 구현하기 위한 프레임워크를 제공합니다. 이 계층은 요청에 컨텍스트 정보를 추가하고, 요청 전처리/후처리를 수행합니다. 시스템 # GitLab 인스턴스 - 모든 유형의 GitLab 인스턴스를 구동하는 GitLab 모놀리스 CustomersDot - 고객이 좌석을 추가하거나 결제 정보를 추가/편집하여 구독을 구매하고 업그레이드할 수 있도록 합니다. Self-Managed 라이선스도 관리합니다. AI Gateway - 모델을 호출하기 위한 통합 인터페이스를 제공하는 시스템입니다. Google Cloud Run에 배포됩니다( Runway 사용). 확장 기능 Language Server (VS Code, Visual Studio 2022 for Windows, Neovim의 Code Suggestions를 구동) VS Code JetBrains Visual Studio 2022 for Windows Neovim Gi