bertrend 0.3.5__tar.gz → 0.3.6__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 (205) hide show
  1. {bertrend-0.3.5 → bertrend-0.3.6}/PKG-INFO +1 -1
  2. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/config/bertopic_default_config.toml +1 -1
  3. bertrend-0.3.6/bertrend/demos/start_topic_analysis_app.sh +14 -0
  4. bertrend-0.3.6/bertrend/demos/start_weak_signals_app.sh +14 -0
  5. bertrend-0.3.6/bertrend/demos/topic_analysis/.streamlit/config.toml +6 -0
  6. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/demo_pages/explore_topics.py +3 -1
  7. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/demo_pages/newsletters_generation.py +8 -0
  8. bertrend-0.3.6/bertrend/demos/weak_signals/.streamlit/config.toml +6 -0
  9. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/data_provider.py +12 -8
  10. bertrend-0.3.6/bertrend_apps/exploration/curebot/.streamlit/config.toml +6 -0
  11. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/app_utils.py +11 -4
  12. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/prompts.py +1 -1
  13. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/start_newsletter_generator.sh +6 -1
  14. bertrend-0.3.6/bertrend_apps/prospective_demo/.streamlit/config.toml +6 -0
  15. bertrend-0.3.6/bertrend_apps/prospective_demo/start_demo.sh +16 -0
  16. {bertrend-0.3.5 → bertrend-0.3.6}/pyproject.toml +1 -1
  17. bertrend-0.3.5/bertrend/demos/start_topic_analysis_app.sh +0 -9
  18. bertrend-0.3.5/bertrend/demos/start_weak_signals_app.sh +0 -9
  19. bertrend-0.3.5/bertrend_apps/prospective_demo/.streamlit/config.toml +0 -3
  20. bertrend-0.3.5/bertrend_apps/prospective_demo/start_demo.sh +0 -9
  21. {bertrend-0.3.5 → bertrend-0.3.6}/AUTHORS.txt +0 -0
  22. {bertrend-0.3.5 → bertrend-0.3.6}/LICENSE.md +0 -0
  23. {bertrend-0.3.5 → bertrend-0.3.6}/README.md +0 -0
  24. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/BERTopicModel.py +0 -0
  25. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/BERTrend.py +0 -0
  26. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/__init__.py +0 -0
  27. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/config/bertrend_default_config.toml +0 -0
  28. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/config/parameters.py +0 -0
  29. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/config/services_default_config.toml +0 -0
  30. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/__init__.py +0 -0
  31. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/__init__.py +0 -0
  32. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/data_loading_component.py +0 -0
  33. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/embed_documents_component.py +0 -0
  34. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/i18n.py +0 -0
  35. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/i18n_translations.py +0 -0
  36. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/icons.py +0 -0
  37. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/parameters_component.py +0 -0
  38. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/demos_utils/state_utils.py +0 -0
  39. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/start_summarizer_app.sh +0 -0
  40. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/summarization/__init__.py +0 -0
  41. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/summarization/summarizer_app.py +0 -0
  42. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/__init__.py +0 -0
  43. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/app.py +0 -0
  44. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/app_utils.py +0 -0
  45. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/demo_pages/__init__.py +0 -0
  46. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/demo_pages/temporal_visualizations.py +0 -0
  47. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/demo_pages/topic_visualizations.py +0 -0
  48. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/demo_pages/training_page.py +0 -0
  49. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/topic_analysis/i18n_translations.py +0 -0
  50. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/weak_signals/__init__.py +0 -0
  51. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/weak_signals/app.py +0 -0
  52. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/weak_signals/i18n_translations.py +0 -0
  53. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/demos/weak_signals/visualizations_utils.py +0 -0
  54. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/llm_utils/__init__.py +0 -0
  55. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/llm_utils/newsletter.css +0 -0
  56. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/llm_utils/newsletter_features.py +0 -0
  57. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/llm_utils/openai_client.py +0 -0
  58. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/llm_utils/prompts.py +0 -0
  59. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/metrics/__init__.py +0 -0
  60. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/metrics/temporal_metrics_embedding.py +0 -0
  61. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/metrics/topic_metrics.py +0 -0
  62. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/resources/common_ngrams.json +0 -0
  63. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/resources/stopwords-en.json +0 -0
  64. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/resources/stopwords-fr.json +0 -0
  65. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/resources/stopwords-rte.json +0 -0
  66. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/__init__.py +0 -0
  67. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/authentication.py +0 -0
  68. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_client.py +0 -0
  69. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/README.md +0 -0
  70. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/__init__.py +0 -0
  71. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/config/default_config.toml +0 -0
  72. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/config/settings.py +0 -0
  73. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/main.py +0 -0
  74. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/models.py +0 -0
  75. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/routers/__init__.py +0 -0
  76. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/routers/authentication.py +0 -0
  77. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/routers/embeddings.py +0 -0
  78. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/routers/info.py +0 -0
  79. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/security.py +0 -0
  80. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/start.py +0 -0
  81. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/status.py +0 -0
  82. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_server/stop.py +0 -0
  83. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/embedding_service.py +0 -0
  84. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/summarizer.py +0 -0
  85. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/summary/__init__.py +0 -0
  86. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/summary/abstractive_summarizer.py +0 -0
  87. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/summary/chatgpt_summarizer.py +0 -0
  88. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/summary/extractive_summarizer.py +0 -0
  89. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/summary/lexrank.py +0 -0
  90. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/services/summary/prompts.py +0 -0
  91. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/README_integration_tests.md +0 -0
  92. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/__init__.py +0 -0
  93. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/conftest.py +0 -0
  94. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_abstractive_summarizer.py +0 -0
  95. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_bertrend.py +0 -0
  96. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_cache_utils.py +0 -0
  97. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_chatgpt_summarizer.py +0 -0
  98. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_config_utils.py +0 -0
  99. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_data_loading.py +0 -0
  100. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_data_structure.py +0 -0
  101. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_embedding_client.py +0 -0
  102. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_extractive_summarizer.py +0 -0
  103. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_installation.py +0 -0
  104. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_integration.py +0 -0
  105. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_newsletter_features.py +0 -0
  106. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_openai_client.py +0 -0
  107. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_representative_docs.py +0 -0
  108. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_summarizer.py +0 -0
  109. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_temporal_metrics_embedding.py +0 -0
  110. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_topic_description.py +0 -0
  111. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_topic_metrics.py +0 -0
  112. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_topic_model.py +0 -0
  113. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_trend_analysis_data_structure.py +0 -0
  114. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_trend_analysis_prompts.py +0 -0
  115. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_trend_analysis_visualizations.py +0 -0
  116. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_trend_analysis_weak_signals.py +0 -0
  117. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_utils_init.py +0 -0
  118. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/tests/test_visualizations.py +0 -0
  119. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/topic_analysis/__init__.py +0 -0
  120. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/topic_analysis/data_structure.py +0 -0
  121. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/topic_analysis/prompts.py +0 -0
  122. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/topic_analysis/representative_docs.py +0 -0
  123. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/topic_analysis/topic_description.py +0 -0
  124. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/topic_analysis/visualizations.py +0 -0
  125. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/trend_analysis/__init__.py +0 -0
  126. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/trend_analysis/data_structure.py +0 -0
  127. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/trend_analysis/prompts.py +0 -0
  128. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/trend_analysis/signal_llm_template_en.html +0 -0
  129. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/trend_analysis/signal_llm_template_fr.html +0 -0
  130. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/trend_analysis/visualizations.py +0 -0
  131. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/trend_analysis/weak_signals.py +0 -0
  132. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/utils/__init__.py +0 -0
  133. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/utils/cache_utils.py +0 -0
  134. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/utils/config_utils.py +0 -0
  135. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend/utils/data_loading.py +0 -0
  136. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/__init__.py +0 -0
  137. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/common/__init__.py +0 -0
  138. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/common/crontab_utils.py +0 -0
  139. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/common/mail_utils.py +0 -0
  140. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/feeds/arxiv_feed.toml +0 -0
  141. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/feeds/decarbonation_feed.toml +0 -0
  142. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/feeds/llm_en_feed.toml +0 -0
  143. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/feeds/llm_feed.toml +0 -0
  144. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/feeds/nlp_feed.toml +0 -0
  145. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/feeds/rte_feed.toml +0 -0
  146. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/gmail_credentials.json +0 -0
  147. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/arxiv_newsletter_from_last.toml +0 -0
  148. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/arxiv_newsletter_from_scratch.toml +0 -0
  149. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/decarbonation_newsletter_from_last.toml +0 -0
  150. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/decarbonation_newsletter_from_scratch.toml +0 -0
  151. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/llm_en_newsletter_from_last.toml +0 -0
  152. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/llm_newsletter_from_last.toml +0 -0
  153. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/nlp_newsletter_from_last.toml +0 -0
  154. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/rte_newsletter_from_last.toml +0 -0
  155. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/config/newsletters/rte_newsletter_from_scratch.toml +0 -0
  156. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/__init__.py +0 -0
  157. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/__main__.py +0 -0
  158. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/arxiv_provider.py +0 -0
  159. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/atom_feed_provider.py +0 -0
  160. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/bing_news_provider.py +0 -0
  161. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/google_news_provider.py +0 -0
  162. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/newscatcher_provider.py +0 -0
  163. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/data_provider/utils.py +0 -0
  164. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/__init__.py +0 -0
  165. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/__init__.py +0 -0
  166. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/app.py +0 -0
  167. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/config.toml +0 -0
  168. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/import_extraction_article.ipynb +0 -0
  169. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/tabs/tab1.py +0 -0
  170. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/tabs/tab2.py +0 -0
  171. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/curebot/tabs/tab3.py +0 -0
  172. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/dataviz/Main_page.py +0 -0
  173. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/dataviz/__init__.py +0 -0
  174. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/dataviz/pages/1_Data_feeds.py +0 -0
  175. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/geolocalization/__init__.py +0 -0
  176. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/geolocalization/entity_utils.py +0 -0
  177. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/geolocalization/spacy/__init__.py +0 -0
  178. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/geolocalization/spacy/common_factory.py +0 -0
  179. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/geolocalization/spacy/dbpedia.py +0 -0
  180. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/geolocalization/spacy/nlp.config +0 -0
  181. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/exploration/geolocalization/spacy/utils.py +0 -0
  182. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/install_feeds_and_newsletters.py +0 -0
  183. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/newsletters/__init__.py +0 -0
  184. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/newsletters/__main__.py +0 -0
  185. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/.streamlit/secrets.toml +0 -0
  186. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/__init__.py +0 -0
  187. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/app.py +0 -0
  188. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/authentication.py +0 -0
  189. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/dashboard_analysis.py +0 -0
  190. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/dashboard_common.py +0 -0
  191. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/dashboard_signals.py +0 -0
  192. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/feeds_common.py +0 -0
  193. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/feeds_config.py +0 -0
  194. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/feeds_data.py +0 -0
  195. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/i18n_translations.py +0 -0
  196. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/llm_utils.py +0 -0
  197. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/models_info.py +0 -0
  198. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/perf_utils.py +0 -0
  199. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/process_new_data.py +0 -0
  200. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/report_generation.py +0 -0
  201. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/report_template.html +0 -0
  202. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/report_utils.py +0 -0
  203. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/prospective_demo/streamlit_utils.py +0 -0
  204. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/start_apps.sh +0 -0
  205. {bertrend-0.3.5 → bertrend-0.3.6}/bertrend_apps/stop_apps.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bertrend
3
- Version: 0.3.5
3
+ Version: 0.3.6
4
4
  Summary: BERTrend analyses topic evolution over time using state-of-the-art transformer models: topic modelling and LLM
5
5
  License: LICENSE.md
6
6
  Keywords: topics,BERTopic,transformers,weak signals,LLM
@@ -30,7 +30,7 @@ prediction_data = true
30
30
 
31
31
  # CountVectorizer: https://scikit-learn.org/1.5/modules/generated/sklearn.feature_extraction.text.CountVectorizer.html
32
32
  [vectorizer_model]
33
- ngram_range = [1, 1]
33
+ ngram_range = [1, 2]
34
34
  stop_words = true # If true, will check `language` parameter and load associated stopwords file
35
35
  min_df = 2
36
36
 
@@ -0,0 +1,14 @@
1
+ #
2
+ # Copyright (c) 2024, RTE (https://www.rte-france.com)
3
+ # See AUTHORS.txt
4
+ # SPDX-License-Identifier: MPL-2.0
5
+ # This file is part of BERTrend.
6
+ #
7
+
8
+
9
+ # Set logs directory and create if not exists
10
+ export BERTREND_LOGS_DIR=$BERTREND_BASE_DIR/logs/bertrend
11
+ mkdir -p $BERTREND_LOGS_DIR
12
+
13
+ echo "Starting BERTrend Topic Analysis demo"
14
+ cd `pwd`/topic_analysis && CUDA_VISIBLE_DEVICES=0 streamlit run app.py 2>&1 | tee -a $BERTREND_LOGS_DIR/topic_analysis_demo.log
@@ -0,0 +1,14 @@
1
+ #
2
+ # Copyright (c) 2024, RTE (https://www.rte-france.com)
3
+ # See AUTHORS.txt
4
+ # SPDX-License-Identifier: MPL-2.0
5
+ # This file is part of BERTrend.
6
+ #
7
+
8
+
9
+ # Set logs directory and create if not exists
10
+ export BERTREND_LOGS_DIR=$BERTREND_BASE_DIR/logs/bertrend
11
+ mkdir -p $BERTREND_LOGS_DIR
12
+
13
+ echo "Starting BERTrend Weak Signal Analysis demo"
14
+ cd `pwd`/weak_signals && CUDA_VISIBLE_DEVICES=0 streamlit run app.py 2>&1 | tee -a $BERTREND_LOGS_DIR/weak_signals_demo.log
@@ -0,0 +1,6 @@
1
+ [theme]
2
+ primaryColor = "royalblue"
3
+ baseFontSize = 13
4
+
5
+ [server]
6
+ port = 8083
@@ -291,7 +291,9 @@ def _display_topic_description(filtered_df: pd.DataFrame):
291
291
  ):
292
292
  with st.spinner(translate("generating_description")):
293
293
  language_code = (
294
- "fr" if SessionStateManager.get("language") == "French" else "en"
294
+ "fr"
295
+ if SessionStateManager.get("internationalization_language") == "French"
296
+ else "en"
295
297
  )
296
298
  gpt_description = generate_topic_description(
297
299
  st.session_state["topic_model"],
@@ -14,6 +14,7 @@ from bertrend.demos.demos_utils.state_utils import (
14
14
  save_widget_state,
15
15
  restore_widget_state,
16
16
  register_multiple_widget,
17
+ SessionStateManager,
17
18
  )
18
19
  from bertrend.services.summary.abstractive_summarizer import AbstractiveSummarizer
19
20
  from bertrend.services.summary.chatgpt_summarizer import GPTSummarizer
@@ -48,6 +49,12 @@ def generate_newsletter_wrapper(
48
49
  else st.session_state["newsletter_nb_docs"]
49
50
  )
50
51
 
52
+ language_code = (
53
+ "fr"
54
+ if SessionStateManager.get("internationalization_language") == "French"
55
+ else "en"
56
+ )
57
+
51
58
  return generate_newsletter(
52
59
  topic_model=st.session_state["topic_model"],
53
60
  df=df,
@@ -60,6 +67,7 @@ def generate_newsletter_wrapper(
60
67
  st.session_state["summarizer_classname"]
61
68
  ],
62
69
  summary_mode=st.session_state["summary_mode"],
70
+ prompt_language=language_code,
63
71
  )
64
72
 
65
73
 
@@ -0,0 +1,6 @@
1
+ [theme]
2
+ primaryColor = "royalblue"
3
+ baseFontSize = 13
4
+
5
+ [server]
6
+ port = 8084
@@ -84,14 +84,18 @@ class DataProvider(ABC):
84
84
  return results as json lines"""
85
85
  articles = []
86
86
  for entry in queries_batch:
87
- logger.info(f"Processing query: {entry}")
88
- articles += self.get_articles(
89
- query=entry[0],
90
- after=entry[1],
91
- before=entry[2],
92
- max_results=max_results,
93
- language=language,
94
- )
87
+ try:
88
+ logger.info(f"Processing query: {entry}")
89
+ articles += self.get_articles(
90
+ query=entry[0],
91
+ after=entry[1],
92
+ before=entry[2],
93
+ max_results=max_results,
94
+ language=language,
95
+ )
96
+ except Exception as e:
97
+ logger.error("Error occurred with query: " + entry[0] + "\n " + str(e))
98
+ continue
95
99
  # remove duplicates
96
100
  articles = [dict(t) for t in {tuple(d.items()) for d in articles}]
97
101
  logger.info(f"Collected {len(articles)} articles")
@@ -0,0 +1,6 @@
1
+ [theme]
2
+ primaryColor = "royalblue"
3
+ baseFontSize = 13
4
+
5
+ [server]
6
+ port = 8082
@@ -42,12 +42,19 @@ EMBEDDING_SERVICE = EmbeddingService(local=False)
42
42
 
43
43
 
44
44
  class TopicDescription(BaseModel):
45
- """Description of topic during a time period"""
45
+ """Description of a topic during a time period"""
46
46
 
47
47
  # Title of the topic
48
48
  title: str
49
49
 
50
50
 
51
+ class TopicSummary(BaseModel):
52
+ """Summary of a topic"""
53
+
54
+ # Title of the topic
55
+ summary: str
56
+
57
+
51
58
  @st.cache_data(show_spinner=False)
52
59
  def concat_data_from_files(files: list[UploadedFile]) -> pd.DataFrame:
53
60
  """
@@ -237,12 +244,12 @@ def create_newsletter(
237
244
  endpoint=LLM_CONFIG["endpoint"],
238
245
  model=LLM_CONFIG["model"],
239
246
  )
240
- response = llm_client.generate(
247
+ response = llm_client.parse(
241
248
  user_prompt=user_prompt,
242
249
  system_prompt=TOPIC_SUMMARY_SYSTEM_PROMPT,
243
- response_format={"type": "json_object"},
250
+ response_format=TopicSummary,
244
251
  )
245
- topic_dict["summary"] = json.loads(response)["résumé"]
252
+ topic_dict["summary"] = response.summary
246
253
  topic_dict["articles"] = []
247
254
  for _, row in topic_df.iterrows():
248
255
  article_dict = {}
@@ -19,6 +19,6 @@ Le résumé doit être concis (maximum 100 mots) et représenter au mieux la sp
19
19
  Il doit pas commencer par "Les articles parlent de..." ou équivalent et doit être écrit dans un style journalistique.
20
20
  Répondez sous la forme d'un JSON suivant le format ci-dessous :
21
21
  {
22
- "résumé": "<votre résumé du thème>"
22
+ "summary": "<votre résumé du thème>"
23
23
  }
24
24
  """
@@ -5,4 +5,9 @@
5
5
  # This file is part of BERTrend.
6
6
  #
7
7
 
8
- OPENAI_API_KEY=$OPENAI_API_KEY_VEILLE CUDA_VISIBLE_DEVICES=0 streamlit run --theme.primaryColor royalblue --server.port 8686 app.py
8
+
9
+ # Set logs directory and create if not exists
10
+ export BERTREND_LOGS_DIR=$BERTREND_BASE_DIR/logs/bertrend
11
+ mkdir -p $BERTREND_LOGS_DIR
12
+
13
+ OPENAI_API_KEY=$OPENAI_API_KEY_VEILLE CUDA_VISIBLE_DEVICES=0 streamlit run app.py | tee -a $BERTREND_LOGS_DIR/curebot_demo.log
@@ -0,0 +1,6 @@
1
+ [theme]
2
+ primaryColor = "royalblue"
3
+ baseFontSize = 13
4
+
5
+ [server]
6
+ port = 8081
@@ -0,0 +1,16 @@
1
+ #
2
+ # Copyright (c) 2024, RTE (https://www.rte-france.com)
3
+ # See AUTHORS.txt
4
+ # SPDX-License-Identifier: MPL-2.0
5
+ # This file is part of BERTrend.
6
+ #
7
+
8
+
9
+
10
+
11
+ # Set logs directory and create if not exists
12
+ export BERTREND_LOGS_DIR=$BERTREND_BASE_DIR/logs/bertrend
13
+ mkdir -p $BERTREND_LOGS_DIR
14
+
15
+ echo "Starting BERTrend Prospective Analysis demo"
16
+ CUDA_VISIBLE_DEVICES=0 streamlit run app.py 2>&1 | tee -a $BERTREND_LOGS_DIR/prospective_analysis_demo.log
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "bertrend"
3
- version = "0.3.5"
3
+ version = "0.3.6"
4
4
  description = "BERTrend analyses topic evolution over time using state-of-the-art transformer models: topic modelling and LLM"
5
5
  license = "LICENSE.md"
6
6
  readme = "README.md"
@@ -1,9 +0,0 @@
1
- #
2
- # Copyright (c) 2024, RTE (https://www.rte-france.com)
3
- # See AUTHORS.txt
4
- # SPDX-License-Identifier: MPL-2.0
5
- # This file is part of BERTrend.
6
- #
7
-
8
- # Starts the Topic Analysis application
9
- CUDA_VISIBLE_DEVICES=0 streamlit run --theme.primaryColor royalblue topic_analysis/app.py
@@ -1,9 +0,0 @@
1
- #
2
- # Copyright (c) 2024, RTE (https://www.rte-france.com)
3
- # See AUTHORS.txt
4
- # SPDX-License-Identifier: MPL-2.0
5
- # This file is part of BERTrend.
6
- #
7
-
8
- # Starts the Trend Analysis application
9
- CUDA_VISIBLE_DEVICES=0 streamlit run --theme.primaryColor royalblue weak_signals/app.py
@@ -1,3 +0,0 @@
1
- [theme]
2
- primaryColor = "royalblue"
3
- baseFontSize = 13
@@ -1,9 +0,0 @@
1
- #
2
- # Copyright (c) 2024, RTE (https://www.rte-france.com)
3
- # See AUTHORS.txt
4
- # SPDX-License-Identifier: MPL-2.0
5
- # This file is part of BERTrend.
6
- #
7
-
8
- # Starts the Trend Analysis application
9
- CUDA_VISIBLE_DEVICES=0 streamlit run app.py
File without changes
File without changes
File without changes
File without changes
File without changes