InfoGrab DocsInfoGrab Docs

시맨틱 코드 검색

키워드 매칭이 아닌 의미를 기반으로 저장소에서 관련 코드 스니펫을 찾습니다.

히스토리 GitLab 18.7에서 베타 로 도입됨 . GitLab 18.8에서 GitLab Duo Core에 추가됨 . GitLab 18.9에서 GitLab Premium에 추가됨 . Note 관리자 문서는 시맨틱 코드 검색 관리 를 참조하세요. 시맨틱 코드 검색을 사용하여 키워드 매칭이 아닌 의미를 기반으로 저장소에서 관련 코드 스니펫을 찾습니다. 시맨틱 코드 검색은 코드베이스를 벡터 데이터베이스에 저장되는 벡터 임베딩으로 변환합니다. 검색할 때 쿼리는 임베딩으로 변환되어 코드 임베딩과 비교하여 의미적으로 유사한 결과를 찾습니다. 이 접근 방식은 키워드가 일치하지 않더라도 관련 코드를 찾습니다. 사전 조건 # GitLab Self-Managed에서는 인스턴스에 대해 시맨틱 코드 검색이 켜져 있어야 합니다. GitLab.com에서는 시맨틱 코드 검색이 기본적으로 켜져 있습니다. 베타 및 실험 기능이 켜져 있어야 합니다: GitLab.com에서는 최상위 그룹에 대해 켭니다. GitLab Self-Managed에서는 인스턴스에 대해 켭니다. 프로젝트에 대해 GitLab Duo 가 켜져 있어야 합니다. 시맨틱 코드 검색 사용 # 시맨틱 코드 검색은 여러 인터페이스를 통해 사용할 수 있습니다: REST API: GET /api/v4/projects/:id/search/semantic 엔드포인트 를 사용하여 코드베이스를 프로그래밍 방식으로 검색합니다. MCP 서버 도구: 에이전트 워크플로에서 semantic_code_search 도구를 사용합니다. CLI: 명령줄 액세스를 위해 glab search semantic 명령을 사용합니다. 임시 초기 인덱싱 # GitLab 프로젝트에서 시맨틱 코드 검색을 처음 사용할 때: 저장소 코드가 인덱싱되어 벡터 임베딩으로 변환됩니다. 이 임베딩은 구성된 벡터 스토어에 저장됩니다. 코드가 기본 브랜치에 푸시될 때 업데이트가 점진적으로 처리됩니다. 대규모 저장소의 경우 초기 인덱싱은 시간이 걸릴 수 있습니다.