「ähnlich」とは、ドイツ語で似ています。次のような使用や開発のための複数のツールで構成されています。
ahnlich-db :対応するメタデータ(キー価値マップ)を備えた埋め込み/ベクトルを保存するためのインメモリベクトルキー値ストア。これは、AI/MLエンジニアが線形(Cosine、Euclidean)または非線形類似性(Kdtree)アルゴリズムを使用して同様のベクトルを保存および検索できるようにする強力なシステムです。また、メタデータ値内の検索を活用して、メタデータ値を使用してエントリをフィルタリングできるようにします。簡単な例は次のように見えます GETSIMN 2 WITH [0.2, 0.1] USING cosinesimilarity IN my_store WHERE (page != hidden)
// example query
get_sim_n(
store="my_store",
search_input=[0.2, 0.1],
closest_n=2,
algorithm=CosineSimilarity,
condition=Predicate::NotEquals{
key="page",
value="hidden",
},
)
ahnlich-ai :AIプロキシahnlich-dbと通信し、生の入力を受け、埋め込みに変換し、DB内に保存します。その後、機能を拡張して、開発者/エンジニアが画像/テキストなどの生の入力を使用して同じストアにクエリを発行できるようにします。ストアインデックスとクエリ用に選択できる複数の既製モデルを備えています。 CREATESTORE my_store QUERYMODEL all-minilm-l6-v2 INDEXMODEL all-minilm-l6-v2
// example query
create_store(
store="my_store",
index_model="all-minilm-l6-v2",
query_model="all-minilm-l6-v2",
)
ahnlich-client-rs : ahnlich-dbとahnlich-ai用のRust client for connection Poolingをサポートします。
ahnlich-client-py :接続プーリングをサポートしてahnlich-dbとahnlich-ai用のPythonクライアント。
ahnlich-cli : ahnlich-dbとahnlich-ai照会するためのCLI

ahnlich-db 、 ahnlich-ai 、 ahnlich-cli Docker画像と並んで複数のプラットフォームのバイナリとしてパッケージ化され、リリースされています
DBは、すべてのクライアントが両方をサポートするため、生成されたベクトル埋め込みのより細い粒子制御のためにAIプロキシなしで使用できます
Note :
引用とコマンドを引用符で渡す必要があります。 EG: docker run <image_name> "ahnlich-db run --enable-tracing --port 8000"
CLIはDocker画像にパッケージ化されています。
GitHubリリースからaiおよびdb用のAhhnlichバイナリをダウンロードできます。
wget :
wget https://github.com/deven96/ahnlich/releases/download/bin%2Fdb%2F0.0.0/aarch64-darwin-ahnlich-db.tar.gz ファイルを抽出します。
tar -xvzf aarch64-darwin-ahnlich-db.tar.gz バイナリを実行します:
./ahnlich-db aarch64-darwin-ahnlich-db.tar.gzを、アーキテクチャに適切なファイル名に置き換えます。 aiについては、対応するaiバイナリをダウンロードして、それを抽出し、 ./ahnlich-aiを使用して実行します。
Ahnlichの事前に作成されたDocker画像を引くことができます:
ahnlich ai :
docker pull ghcr.io/deven96/ahnlich-ai:latest Ahnlich DB :
docker pull ghcr.io/deven96/ahnlich-db:latest 以下はahnlich-ai docker-compose.yaml ahnlich-dbの例です。
services :
ahnlich_db :
image : ghcr.io/deven96/ahnlich-db:latest
command : >
"ahnlich-db run --host 0.0.0.0
--enable-tracing
--otel-endpoint http://jaeger:4317"
ports :
- " 1369:1369 "
ahnlich_ai :
image : ghcr.io/deven96/ahnlich-ai:latest
command : >
"ahnlich-ai run --db-host ahnlich_db --host 0.0.0.0
--supported-models all-minilm-l6-v2,resnet-50
--enable-tracing
--otel-endpoint http://jaeger:4317"
ports :
- " 1370:1370 "
# optional jaeger service whenever --enable-tracing and
# --otel-endpoint is used
jaeger :
image : jaegertracing/all-in-one:${JAEGER_VERSION:-latest}
ports :
- " 16686:16686 "
- " 1888:1888 " # pprof extension
- " 8888:8888 " # Prometheus metrics exposed by the collector
- " 8889:8889 " # Prometheus exporter metrics
- " 4317:4317 " # otlp grpc
- " 4318:4318 " # otlp http以下はdocker-compose.yaml構成の例です。
services :
ahnlich_db :
image : ghcr.io/deven96/ahnlich-db:latest
command : >
"ahnlich-db run --host 0.0.0.0
--enable-persistence --persist-location /root/.ahnlich/data/db.dat
--persistence-interval 300"
ports :
- " 1369:1369 "
volumes :
- " ./data/:/root/.ahnlich/data " # Persistence Location
ahnlich_ai :
image : ghcr.io/deven96/ahnlich-ai:latest
command : >
"ahnlich-ai run --db-host ahnlich_db --host 0.0.0.0
--supported-models all-minilm-l6-v2,resnet-50
--enable-persistence --persist-location /root/.ahnlich/data/ai.dat
--persistence-interval 300"
ports :
- " 1370:1370 "
volumes :
- " ./ahnlich_ai_model_cache:/root/.ahnlich/models " # Model cache storage
- " ./data/:/root/.ahnlich/data " # Persistence Location
貢献ガイドを表示します