diff --git a/Dockerfile b/Dockerfile index 3f4fe74..4576235 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,8 +2,3 @@ FROM rust # install tini to capture SIGINTs properly RUN apt-get update && apt-get install -y tini - -WORKDIR /smartgpt - -ENTRYPOINT ["/usr/bin/tini", "--"] -CMD ["cargo", "run", "--release"] \ No newline at end of file diff --git a/docker-compose.yaml b/docker-compose.yaml index 22a4c35..db3cf1a 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,6 +1,8 @@ services: smartgpt: build: . + working_dir: /smartgpt + network_mode: host # depends_on: # - qdrant # - redis @@ -8,15 +10,24 @@ services: - "3001:3001" volumes: - .:/smartgpt - environment: - QDRANT_HOST: ${QDRANT_HOST:-qdrant} - REDIS_HOST: ${REDIS_HOST:-redis} + # environment: + # QDRANT_HOST: ${QDRANT_HOST:-qdrant} + # REDIS_HOST: ${REDIS_HOST:-redis} + entrypoint: + - /usr/bin/tini + - -- + command: + - cargo + - run + - --release qdrant: image: "qdrant/qdrant" + network_mode: host ports: - "6333:6333" - "6334:6334" environment: QDRANT__SERVICE__GRPC_PORT: 6334 redis: - image: "redis/redis-stack-server:latest" \ No newline at end of file + image: "redis/redis-stack-server:latest" + network_mode: host \ No newline at end of file diff --git a/src/memory/qdrant.rs b/src/memory/qdrant.rs index b30009d..af3f3c5 100644 --- a/src/memory/qdrant.rs +++ b/src/memory/qdrant.rs @@ -11,7 +11,7 @@ use qdrant_client::prelude::*; use qdrant_client::qdrant::value::Kind; use qdrant_client::qdrant::vectors::VectorsOptions; use qdrant_client::qdrant::vectors_config::Config; -use qdrant_client::qdrant::{CreateCollection, SearchPoints, VectorParams, VectorsConfig, PointId, Vectors, Vector, WithPayloadSelector, with_payload_selector, OptimizersConfigDiff, WalConfigDiff, HnswConfigDiff, QuantizationConfig, quantization_config, ScalarQuantization, RecommendPoints, ScoredPoint}; +use qdrant_client::qdrant::{CreateCollection, SearchPoints, VectorParams, VectorsConfig, PointId, Vectors, Vector, WithPayloadSelector, with_payload_selector, RecommendPoints, ScoredPoint}; use tokio::runtime::Runtime; use super::MemorySystem; @@ -97,7 +97,7 @@ impl MemorySystem for QdrantMemorySystem { let latest_point_id = latest_point_id_option.unwrap_or(0); let mut points: Vec = vec![]; - let mut search_result = vec![]; + let search_result; if latest_point_id > 0 { points.push(PointId { point_id_options: Some(point_id::PointIdOptions::Num(latest_point_id)), @@ -174,7 +174,7 @@ impl MemoryProvider for QdrantProvider { init_qdrant_client().await })?; - let collection_name = "qdrant_memory"; + let collection_name = "smartgpt_agent_memory"; rt.block_on(async { create_collection_if_not_exists(&client, &collection_name).await