케네디
Kennedy는 Gemini 공간에 대한 검색 엔진입니다. 크롤러, 백엔드, Gemini 앱 서버로 구성됩니다. Kennedy는 초기 WWW 크롤러와 Mercator, Archive.org, GoogleBot과 같은 검색 엔진의 많은 기술과 아키텍처를 활용합니다.
데모
Gemini 클라이언트 또는 HTTP-Gemini 프록시를 통해 gemini://kennedy.gemi.dev
방문하세요.
특징
- Porter Stemming을 사용한 전체 텍스트 검색
- 제안된 쿼리. Kennedy는 결과가 많지 않으면 다른 쿼리를 권장합니다.
- 복잡한 검색어. 예: "고양이 AND 개", "(고양이 OR 개) NOT 새".
- 이미지 검색! Kennedy는 이미지 검색을 활성화하기 위해 링크 텍스트와 경로 정보를 색인화합니다.
- MIME 유형 대신 ngram을 사용한 콘텐츠 언어 분류
lang=
매개변수 - 결과 관련성을 더 잘 판단하기 위한 PageRank 파생 알고리즘
- 깔끔한 스니펫: 검색 결과에는 검색어와 일치하는 콘텐츠 스니펫이 포함됩니다. 귀하의 키워드는 대괄호로 [둘러싸여] 있으며, 읽기 쉽도록 gemtext 형식이 제거되었습니다.
- 줄 수: 긴 형식의 콘텐츠에서 빠른 기사를 정렬하는 데 도움이 되도록 검색 결과는 콘텐츠에 몇 줄이 있는지 알려줍니다. 좀 더 괴상하게 말하고 싶다면 바이트 크기도 포함합니다.
왜?
수년 전 에베레스트 산에서 사망한 영국의 위대한 탐험가 조지 말로리는 왜 그 산에 오르고 싶느냐는 질문을 받았습니다. 그는 “거기에 있기 때문이다”라고 말했습니다.
존 F. 케네디 라이스 대학교 연설, 1962년 9월 12일
프로젝트
- Kennedy.Crawler - 크롤러 논리(URL 프론티어, 대기열 등)
- Kennedy.CrawlData - 문서, 메타데이터 및 전체 텍스트 검색을 위한 모델 및 저장 시스템
- Kennedy.Server - 쿼리 및 검색 결과를 처리하는 Gemini 서버입니다. .NET Gemini 서버 및 애플리케이션 프레임워크인 RocketForce를 기반으로 구축됨
- Kennedy.SearchConsole - FTS 쿼리를 실행하기 위한 콘솔 앱입니다. 테스트에 사용됨