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.
Files changed (163) hide show
  1. wavemind-2.2.3/Dockerfile +28 -0
  2. {wavemind-2.2.1 → wavemind-2.2.3}/MANIFEST.in +5 -0
  3. {wavemind-2.2.1 → wavemind-2.2.3}/PKG-INFO +339 -32
  4. {wavemind-2.2.1 → wavemind-2.2.3}/README.md +335 -31
  5. wavemind-2.2.3/benchmarks/BENCHMARK_LEADERBOARD.md +33 -0
  6. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/BENCHMARK_REPORT.md +12 -4
  7. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/ann_index_curve_benchmark.py +87 -22
  8. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/benchmark_matrix_results.json +438 -13
  9. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/benchmark_registry.py +344 -29
  10. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/field_memory_dynamics_benchmark.py +28 -1
  11. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/field_memory_dynamics_results.json +5 -3
  12. wavemind-2.2.3/benchmarks/longmemeval_answer_benchmark.py +599 -0
  13. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_answer_extractive_20_results.json +91 -4
  14. wavemind-2.2.3/benchmarks/longmemeval_answer_qwen25_0_5b_50_results.json +344 -0
  15. wavemind-2.2.3/benchmarks/longmemeval_answer_qwen25_1_5b_50_results.json +344 -0
  16. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_evidence_50_results.json +10 -10
  17. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_memory_benchmark.py +2 -1
  18. wavemind-2.2.3/benchmarks/memory_competitor_benchmark.py +244 -0
  19. wavemind-2.2.3/benchmarks/memory_competitor_results.json +41 -0
  20. wavemind-2.2.3/benchmarks/nomiracl_russian_benchmark.py +242 -0
  21. wavemind-2.2.3/benchmarks/nomiracl_russian_results.json +53 -0
  22. wavemind-2.2.3/benchmarks/production_index_profile_results.json +83 -0
  23. wavemind-2.2.3/benchmarks/production_load_benchmark.py +167 -0
  24. wavemind-2.2.3/benchmarks/production_load_qdrant_100k_tuned_results.json +75 -0
  25. wavemind-2.2.3/benchmarks/production_load_qdrant_1m_ef_sweep_results.json +79 -0
  26. wavemind-2.2.3/benchmarks/production_load_qdrant_1m_results.json +66 -0
  27. wavemind-2.2.3/benchmarks/production_load_qdrant_1m_tuned_results.json +75 -0
  28. wavemind-2.2.3/benchmarks/production_load_results.json +79 -0
  29. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/render_benchmark_charts.py +25 -18
  30. wavemind-2.2.3/benchmarks/render_benchmark_leaderboard.py +234 -0
  31. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/render_benchmark_report.py +4 -0
  32. wavemind-2.2.3/benchmarks/scale_readiness_benchmark.py +272 -0
  33. wavemind-2.2.3/benchmarks/scale_readiness_results.json +52 -0
  34. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/wavemind_capacity_results.json +1 -1
  35. {wavemind-2.2.1 → wavemind-2.2.3}/docker-compose.yml +1 -1
  36. wavemind-2.2.3/docs/BENCHMARK_BRIEF.md +258 -0
  37. {wavemind-2.2.1 → wavemind-2.2.3}/docs/CHROMA_MIGRATION.md +16 -0
  38. {wavemind-2.2.1 → wavemind-2.2.3}/docs/LAUNCH_KIT.md +29 -6
  39. wavemind-2.2.3/docs/OBSERVABILITY.md +197 -0
  40. {wavemind-2.2.1 → wavemind-2.2.3}/docs/ROADMAP.md +52 -11
  41. {wavemind-2.2.1 → wavemind-2.2.3}/docs/RU_LAUNCH_POSTS.md +26 -43
  42. {wavemind-2.2.1 → wavemind-2.2.3}/docs/USE_CASES.md +25 -0
  43. {wavemind-2.2.1 → wavemind-2.2.3}/docs/assets/benchmark-summary.svg +60 -48
  44. wavemind-2.2.3/docs/assets/wavemind-demo.gif +0 -0
  45. wavemind-2.2.3/examples/chroma_migration.py +172 -0
  46. wavemind-2.2.3/examples/customer_support_memory.py +214 -0
  47. wavemind-2.2.3/examples/llamaindex_retriever.py +88 -0
  48. wavemind-2.2.3/examples/observability/README.md +18 -0
  49. wavemind-2.2.3/examples/observability/docker-compose.yml +44 -0
  50. wavemind-2.2.3/examples/observability/otel-collector.yaml +22 -0
  51. wavemind-2.2.3/examples/observability/prometheus-alerts.yml +39 -0
  52. wavemind-2.2.3/examples/observability/prometheus.yml +16 -0
  53. wavemind-2.2.3/examples/production-index-profile/README.md +39 -0
  54. wavemind-2.2.3/examples/production-index-profile/docker-compose.yml +64 -0
  55. wavemind-2.2.3/examples/research_notebook_memory.py +220 -0
  56. {wavemind-2.2.1 → wavemind-2.2.3}/pyproject.toml +5 -1
  57. {wavemind-2.2.1 → wavemind-2.2.3}/requirements-optional.txt +4 -0
  58. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_api.py +133 -0
  59. wavemind-2.2.3/tests/test_benchmark_brief.py +35 -0
  60. wavemind-2.2.3/tests/test_benchmark_leaderboard.py +39 -0
  61. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_benchmark_registry.py +8 -1
  62. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_benchmark_report.py +2 -0
  63. wavemind-2.2.3/tests/test_chroma_migration_example.py +92 -0
  64. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_cli_smoke.py +81 -0
  65. wavemind-2.2.3/tests/test_cluster.py +125 -0
  66. wavemind-2.2.3/tests/test_examples.py +259 -0
  67. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_field_graph_integration.py +42 -0
  68. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_field_memory_dynamics_benchmark.py +2 -0
  69. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_indexes_encoders.py +25 -0
  70. wavemind-2.2.3/tests/test_jobs.py +126 -0
  71. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_longmemeval_answer_benchmark.py +53 -1
  72. wavemind-2.2.3/tests/test_memory_competitor_benchmark.py +50 -0
  73. wavemind-2.2.3/tests/test_multimodal.py +71 -0
  74. wavemind-2.2.3/tests/test_nomiracl_russian_benchmark.py +73 -0
  75. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_observability.py +42 -0
  76. wavemind-2.2.3/tests/test_observability_docs.py +30 -0
  77. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_packaging_files.py +42 -1
  78. wavemind-2.2.3/tests/test_production_index_profile.py +47 -0
  79. wavemind-2.2.3/tests/test_production_load_benchmark.py +73 -0
  80. wavemind-2.2.3/tests/test_scale_plan.py +171 -0
  81. wavemind-2.2.3/tests/test_scale_readiness_benchmark.py +20 -0
  82. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/__init__.py +29 -1
  83. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/api.py +222 -37
  84. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/cli.py +170 -0
  85. wavemind-2.2.3/wavemind/cluster.py +289 -0
  86. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/core.py +184 -0
  87. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/indexes.py +67 -24
  88. wavemind-2.2.3/wavemind/jobs.py +373 -0
  89. wavemind-2.2.3/wavemind/multimodal.py +147 -0
  90. wavemind-2.2.3/wavemind/scale.py +152 -0
  91. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/PKG-INFO +339 -32
  92. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/SOURCES.txt +48 -0
  93. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/requires.txt +4 -0
  94. wavemind-2.2.1/Dockerfile +0 -23
  95. wavemind-2.2.1/benchmarks/longmemeval_answer_benchmark.py +0 -351
  96. wavemind-2.2.1/tests/test_examples.py +0 -132
  97. {wavemind-2.2.1 → wavemind-2.2.3}/CONTRIBUTING.md +0 -0
  98. {wavemind-2.2.1 → wavemind-2.2.3}/LICENSE +0 -0
  99. {wavemind-2.2.1 → wavemind-2.2.3}/SECURITY.md +0 -0
  100. {wavemind-2.2.1 → wavemind-2.2.3}/SUPPORT.md +0 -0
  101. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/agent_memory_benchmark.py +0 -0
  102. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/agent_memory_results.json +0 -0
  103. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/ann_index_curve_results.json +0 -0
  104. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/dynamic_memory_benchmark.py +0 -0
  105. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/dynamic_memory_results.json +0 -0
  106. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/locomo_evidence_results.json +0 -0
  107. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/locomo_memory_benchmark.py +0 -0
  108. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/locomo_sentence_evidence_results.json +0 -0
  109. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/long_memory_evidence_benchmark.py +0 -0
  110. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/long_memory_evidence_results.json +0 -0
  111. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/longmemeval_evidence_results.json +0 -0
  112. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/open_retrieval_benchmark.py +0 -0
  113. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/open_retrieval_scifact_results.json +0 -0
  114. {wavemind-2.2.1 → wavemind-2.2.3}/benchmarks/ru_sentences_benchmark.py +0 -0
  115. {wavemind-2.2.1 → wavemind-2.2.3}/docs/DEMO_SCRIPT.md +0 -0
  116. {wavemind-2.2.1 → wavemind-2.2.3}/docs/PROJECT_BOARD.md +0 -0
  117. {wavemind-2.2.1 → wavemind-2.2.3}/docs/RELEASE.md +0 -0
  118. {wavemind-2.2.1 → wavemind-2.2.3}/docs/assets/wavemind-social-card.svg +0 -0
  119. {wavemind-2.2.1 → wavemind-2.2.3}/examples/agent_with_memory.py +0 -0
  120. {wavemind-2.2.1 → wavemind-2.2.3}/examples/demo.py +0 -0
  121. {wavemind-2.2.1 → wavemind-2.2.3}/examples/dynamic_memory_demo.py +0 -0
  122. {wavemind-2.2.1 → wavemind-2.2.3}/examples/framework_integrations.py +0 -0
  123. {wavemind-2.2.1 → wavemind-2.2.3}/examples/langchain_memory.py +0 -0
  124. {wavemind-2.2.1 → wavemind-2.2.3}/examples/sharded_memory.py +0 -0
  125. {wavemind-2.2.1 → wavemind-2.2.3}/install.bat +0 -0
  126. {wavemind-2.2.1 → wavemind-2.2.3}/install.sh +0 -0
  127. {wavemind-2.2.1 → wavemind-2.2.3}/requirements.txt +0 -0
  128. {wavemind-2.2.1 → wavemind-2.2.3}/setup.cfg +0 -0
  129. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_agent_memory_benchmark.py +0 -0
  130. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_ann_index_curve_benchmark.py +0 -0
  131. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_api_process_persistence.py +0 -0
  132. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_benchmark_charts.py +0 -0
  133. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_core_persistence.py +0 -0
  134. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_dynamic_memory_benchmark.py +0 -0
  135. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_field_graph.py +0 -0
  136. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_framework_adapters.py +0 -0
  137. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_import_benchmark.py +0 -0
  138. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_langchain_integration.py +0 -0
  139. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_locomo_memory_benchmark.py +0 -0
  140. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_long_memory_evidence_benchmark.py +0 -0
  141. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_longmemeval_memory_benchmark.py +0 -0
  142. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_open_retrieval_benchmark.py +0 -0
  143. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_postgres_storage.py +0 -0
  144. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_semantic_and_latency.py +0 -0
  145. {wavemind-2.2.1 → wavemind-2.2.3}/tests/test_sharding.py +0 -0
  146. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/__main__.py +0 -0
  147. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/benchmark.py +0 -0
  148. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/encoders.py +0 -0
  149. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/field_graph.py +0 -0
  150. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/importers.py +0 -0
  151. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/__init__.py +0 -0
  152. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/autogen.py +0 -0
  153. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/crewai.py +0 -0
  154. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/langchain.py +0 -0
  155. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/langgraph.py +0 -0
  156. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/integrations/llamaindex.py +0 -0
  157. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/observability.py +0 -0
  158. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/sharding.py +0 -0
  159. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/storage.py +0 -0
  160. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind/studio.py +0 -0
  161. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/dependency_links.txt +0 -0
  162. {wavemind-2.2.1 → wavemind-2.2.3}/wavemind.egg-info/entry_points.txt +0 -0
  163. {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