wavemind 2.2.1__tar.gz → 2.2.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- wavemind-2.2.3/Dockerfile +28 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/MANIFEST.in +5 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/PKG-INFO +339 -32
- {wavemind-2.2.1 → wavemind-2.2.3}/README.md +335 -31
- wavemind-2.2.3/benchmarks/BENCHMARK_LEADERBOARD.md +33 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/BENCHMARK_REPORT.md +12 -4
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/ann_index_curve_benchmark.py +87 -22
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/benchmark_matrix_results.json +438 -13
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/benchmark_registry.py +344 -29
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/field_memory_dynamics_benchmark.py +28 -1
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/field_memory_dynamics_results.json +5 -3
- wavemind-2.2.3/benchmarks/longmemeval_answer_benchmark.py +599 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_answer_extractive_20_results.json +91 -4
- wavemind-2.2.3/benchmarks/longmemeval_answer_qwen25_0_5b_50_results.json +344 -0
- wavemind-2.2.3/benchmarks/longmemeval_answer_qwen25_1_5b_50_results.json +344 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_evidence_50_results.json +10 -10
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_memory_benchmark.py +2 -1
- wavemind-2.2.3/benchmarks/memory_competitor_benchmark.py +244 -0
- wavemind-2.2.3/benchmarks/memory_competitor_results.json +41 -0
- wavemind-2.2.3/benchmarks/nomiracl_russian_benchmark.py +242 -0
- wavemind-2.2.3/benchmarks/nomiracl_russian_results.json +53 -0
- wavemind-2.2.3/benchmarks/production_index_profile_results.json +83 -0
- wavemind-2.2.3/benchmarks/production_load_benchmark.py +167 -0
- wavemind-2.2.3/benchmarks/production_load_qdrant_100k_tuned_results.json +75 -0
- wavemind-2.2.3/benchmarks/production_load_qdrant_1m_ef_sweep_results.json +79 -0
- wavemind-2.2.3/benchmarks/production_load_qdrant_1m_results.json +66 -0
- wavemind-2.2.3/benchmarks/production_load_qdrant_1m_tuned_results.json +75 -0
- wavemind-2.2.3/benchmarks/production_load_results.json +79 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/render_benchmark_charts.py +25 -18
- wavemind-2.2.3/benchmarks/render_benchmark_leaderboard.py +234 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/render_benchmark_report.py +4 -0
- wavemind-2.2.3/benchmarks/scale_readiness_benchmark.py +272 -0
- wavemind-2.2.3/benchmarks/scale_readiness_results.json +52 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/wavemind_capacity_results.json +1 -1
- {wavemind-2.2.1 → wavemind-2.2.3}/docker-compose.yml +1 -1
- wavemind-2.2.3/docs/BENCHMARK_BRIEF.md +258 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/CHROMA_MIGRATION.md +16 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/LAUNCH_KIT.md +29 -6
- wavemind-2.2.3/docs/OBSERVABILITY.md +197 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/ROADMAP.md +52 -11
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/RU_LAUNCH_POSTS.md +26 -43
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/USE_CASES.md +25 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/assets/benchmark-summary.svg +60 -48
- wavemind-2.2.3/docs/assets/wavemind-demo.gif +0 -0
- wavemind-2.2.3/examples/chroma_migration.py +172 -0
- wavemind-2.2.3/examples/customer_support_memory.py +214 -0
- wavemind-2.2.3/examples/llamaindex_retriever.py +88 -0
- wavemind-2.2.3/examples/observability/README.md +18 -0
- wavemind-2.2.3/examples/observability/docker-compose.yml +44 -0
- wavemind-2.2.3/examples/observability/otel-collector.yaml +22 -0
- wavemind-2.2.3/examples/observability/prometheus-alerts.yml +39 -0
- wavemind-2.2.3/examples/observability/prometheus.yml +16 -0
- wavemind-2.2.3/examples/production-index-profile/README.md +39 -0
- wavemind-2.2.3/examples/production-index-profile/docker-compose.yml +64 -0
- wavemind-2.2.3/examples/research_notebook_memory.py +220 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/pyproject.toml +5 -1
- {wavemind-2.2.1 → wavemind-2.2.3}/requirements-optional.txt +4 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_api.py +133 -0
- wavemind-2.2.3/tests/test_benchmark_brief.py +35 -0
- wavemind-2.2.3/tests/test_benchmark_leaderboard.py +39 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_benchmark_registry.py +8 -1
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_benchmark_report.py +2 -0
- wavemind-2.2.3/tests/test_chroma_migration_example.py +92 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_cli_smoke.py +81 -0
- wavemind-2.2.3/tests/test_cluster.py +125 -0
- wavemind-2.2.3/tests/test_examples.py +259 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_field_graph_integration.py +42 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_field_memory_dynamics_benchmark.py +2 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_indexes_encoders.py +25 -0
- wavemind-2.2.3/tests/test_jobs.py +126 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_longmemeval_answer_benchmark.py +53 -1
- wavemind-2.2.3/tests/test_memory_competitor_benchmark.py +50 -0
- wavemind-2.2.3/tests/test_multimodal.py +71 -0
- wavemind-2.2.3/tests/test_nomiracl_russian_benchmark.py +73 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_observability.py +42 -0
- wavemind-2.2.3/tests/test_observability_docs.py +30 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_packaging_files.py +42 -1
- wavemind-2.2.3/tests/test_production_index_profile.py +47 -0
- wavemind-2.2.3/tests/test_production_load_benchmark.py +73 -0
- wavemind-2.2.3/tests/test_scale_plan.py +171 -0
- wavemind-2.2.3/tests/test_scale_readiness_benchmark.py +20 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/__init__.py +29 -1
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/api.py +222 -37
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/cli.py +170 -0
- wavemind-2.2.3/wavemind/cluster.py +289 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/core.py +184 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/indexes.py +67 -24
- wavemind-2.2.3/wavemind/jobs.py +373 -0
- wavemind-2.2.3/wavemind/multimodal.py +147 -0
- wavemind-2.2.3/wavemind/scale.py +152 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/PKG-INFO +339 -32
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/SOURCES.txt +48 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/requires.txt +4 -0
- wavemind-2.2.1/Dockerfile +0 -23
- wavemind-2.2.1/benchmarks/longmemeval_answer_benchmark.py +0 -351
- wavemind-2.2.1/tests/test_examples.py +0 -132
- {wavemind-2.2.1 → wavemind-2.2.3}/CONTRIBUTING.md +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/LICENSE +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/SECURITY.md +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/SUPPORT.md +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/agent_memory_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/agent_memory_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/ann_index_curve_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/dynamic_memory_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/dynamic_memory_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/locomo_evidence_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/locomo_memory_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/locomo_sentence_evidence_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/long_memory_evidence_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/long_memory_evidence_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_evidence_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/open_retrieval_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/open_retrieval_scifact_results.json +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/ru_sentences_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/DEMO_SCRIPT.md +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/PROJECT_BOARD.md +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/RELEASE.md +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/docs/assets/wavemind-social-card.svg +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/examples/agent_with_memory.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/examples/demo.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/examples/dynamic_memory_demo.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/examples/framework_integrations.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/examples/langchain_memory.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/examples/sharded_memory.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/install.bat +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/install.sh +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/requirements.txt +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/setup.cfg +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_agent_memory_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_ann_index_curve_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_api_process_persistence.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_benchmark_charts.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_core_persistence.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_dynamic_memory_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_field_graph.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_framework_adapters.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_import_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_langchain_integration.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_locomo_memory_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_long_memory_evidence_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_longmemeval_memory_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_open_retrieval_benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_postgres_storage.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_semantic_and_latency.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_sharding.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/__main__.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/benchmark.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/encoders.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/field_graph.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/importers.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/__init__.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/autogen.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/crewai.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/langchain.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/langgraph.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/llamaindex.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/observability.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/sharding.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/storage.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/studio.py +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/dependency_links.txt +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/entry_points.txt +0 -0
- {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
FROM python:3.11-slim
|
|
2
|
+
|
|
3
|
+
ARG INSTALL_OPTIONAL=false
|
|
4
|
+
ARG INSTALL_OTEL=false
|
|
5
|
+
ARG INSTALL_PRODUCTION=false
|
|
6
|
+
|
|
7
|
+
ENV PYTHONDONTWRITEBYTECODE=1
|
|
8
|
+
ENV PYTHONUNBUFFERED=1
|
|
9
|
+
ENV WAVEMIND_DB=/data/wavemind.sqlite3
|
|
10
|
+
ENV WAVEMIND_LOG_LEVEL=INFO
|
|
11
|
+
|
|
12
|
+
WORKDIR /app
|
|
13
|
+
|
|
14
|
+
RUN if [ "$INSTALL_OPTIONAL" = "true" ] || [ "$INSTALL_PRODUCTION" = "true" ]; then apt-get update && apt-get install -y --no-install-recommends build-essential && rm -rf /var/lib/apt/lists/*; fi
|
|
15
|
+
|
|
16
|
+
COPY README.md pyproject.toml requirements.txt requirements-optional.txt ./
|
|
17
|
+
RUN pip install --no-cache-dir -r requirements.txt \
|
|
18
|
+
&& if [ "$INSTALL_OPTIONAL" = "true" ]; then pip install --no-cache-dir -r requirements-optional.txt; fi \
|
|
19
|
+
&& if [ "$INSTALL_OTEL" = "true" ]; then pip install --no-cache-dir "opentelemetry-api>=1.25" "opentelemetry-sdk>=1.25" "opentelemetry-exporter-otlp>=1.25" "opentelemetry-instrumentation-fastapi>=0.46b0"; fi
|
|
20
|
+
|
|
21
|
+
COPY wavemind ./wavemind
|
|
22
|
+
COPY wavemind_v2.py ./wavemind_v2.py
|
|
23
|
+
RUN if [ "$INSTALL_PRODUCTION" = "true" ]; then pip install --no-cache-dir -e ".[production]"; else pip install --no-cache-dir -e .; fi
|
|
24
|
+
|
|
25
|
+
VOLUME ["/data", "/backups"]
|
|
26
|
+
EXPOSE 8000
|
|
27
|
+
|
|
28
|
+
CMD ["uvicorn", "wavemind.api:create_app", "--factory", "--host", "0.0.0.0", "--port", "8000"]
|
|
@@ -14,13 +14,18 @@ include docs/RELEASE.md
|
|
|
14
14
|
include docs/PROJECT_BOARD.md
|
|
15
15
|
include docs/DEMO_SCRIPT.md
|
|
16
16
|
include docs/LAUNCH_KIT.md
|
|
17
|
+
include docs/BENCHMARK_BRIEF.md
|
|
17
18
|
include docs/CHROMA_MIGRATION.md
|
|
19
|
+
include docs/OBSERVABILITY.md
|
|
18
20
|
include docs/RU_LAUNCH_POSTS.md
|
|
19
21
|
include docs/USE_CASES.md
|
|
20
22
|
include docs/assets/benchmark-summary.svg
|
|
21
23
|
include docs/assets/wavemind-social-card.svg
|
|
24
|
+
include docs/assets/wavemind-demo.gif
|
|
22
25
|
include benchmarks/*.py
|
|
23
26
|
include benchmarks/*.json
|
|
24
27
|
include benchmarks/*.md
|
|
25
28
|
include examples/*.py
|
|
29
|
+
recursive-include examples/observability *
|
|
30
|
+
recursive-include examples/production-index-profile *
|
|
26
31
|
prune benchmarks/data
|