diff --git a/README.rst b/README.rst index c7ec0bb..22fb708 100644 --- a/README.rst +++ b/README.rst @@ -91,7 +91,7 @@ - `Чат поддержки `_ Статьи о решениях, основанных на ProtoLLM: -======================================== +========================================== - Zakharov K. et al. Forecasting Population Migration in Small Settlements Using Generative Models under Conditions of Data Scarcity //Smart Cities. – 2024. – Т. 7. – №. 5. – С. 2495-2513. - Kovalchuk M. A. et al. SemConvTree: Semantic Convolutional Quadtrees for Multi-Scale Event Detection in Smart City //Smart Cities. – 2024. – Т. 7. – №. 5. – С. 2763-2780. - Kalyuzhnaya A. et al. LLM Agents for Smart City Management: Enhancing Decision Support through Multi-Agent AI Systems - 2024 - Under Review diff --git a/README_en.rst b/README_en.rst index 917553a..15b8ccc 100644 --- a/README_en.rst +++ b/README_en.rst @@ -25,24 +25,24 @@ Intro Proto LLM features ================== - Rapid prototyping of information retrieval systems based on LLM using RAG: -Implementations of architectural patterns for interacting with different databases and web service interfaces; -Methods for optimising RAG pipelines to eliminate redundancy. + Implementations of architectural patterns for interacting with different databases and web service interfaces; + Methods for optimising RAG pipelines to eliminate redundancy. - Development and integration of applications with LLM with connection of external services and models through plugin system: -Integration with AutoML solutions for predictive tasks; -Providing structured output generation and validation; + Integration with AutoML solutions for predictive tasks; + Providing structured output generation and validation; - Implementation of ensemble methods and multi-agent approaches to improve the efficiency of LLMs: -Possibility of combining arbitrary LLMs into ensembles to improve generation quality, automatic selection of ensemble composition; -Work with model-agents and ensemble pipelines; + Possibility of combining arbitrary LLMs into ensembles to improve generation quality, automatic selection of ensemble composition; + Work with model-agents and ensemble pipelines; - Generation of complex synthetic data for further training and improvement of LLM: -Generating examples from existing models and data sets; -Evolutionary optimisation to increase the diversity of examples; Integration with Label Studio; + Generating examples from existing models and data sets; + Evolutionary optimisation to increase the diversity of examples; Integration with Label Studio; - Providing interoperability with various LLM providers: -Support for native models (GigaChat, YandexGPT, vsegpt, etc.). -Interaction with open-source models deployed locally. + Support for native models (GigaChat, YandexGPT, vsegpt, etc.). + Interaction with open-source models deployed locally. Installation @@ -106,7 +106,7 @@ Contacts - `Helpdesk chat `_ Papers about ProtoLLM-based solutions: -===================================== +====================================== - Zakharov K. et al. Forecasting Population Migration in Small Settlements Using Generative Models under Conditions of Data Scarcity //Smart Cities. – 2024. – Т. 7. – №. 5. – С. 2495-2513. - Kovalchuk M. A. et al. SemConvTree: Semantic Convolutional Quadtrees for Multi-Scale Event Detection in Smart City //Smart Cities. – 2024. – Т. 7. – №. 5. – С. 2763-2780. - Kalyuzhnaya A. et al. LLM Agents for Smart City Management: Enhancing Decision Support through Multi-Agent AI Systems - 2024 - Under Review diff --git a/protollm_tools/sdk/protollm_sdk/object_interface/rabbit_mq_wrapper.py b/protollm_tools/sdk/protollm_sdk/object_interface/rabbit_mq_wrapper.py index a2ef3ca..f315d5c 100644 --- a/protollm_tools/sdk/protollm_sdk/object_interface/rabbit_mq_wrapper.py +++ b/protollm_tools/sdk/protollm_sdk/object_interface/rabbit_mq_wrapper.py @@ -49,19 +49,16 @@ def publish_message(self, queue_name: str, message: dict, priority: int = None): """ try: with self.get_channel() as channel: - # Declare the queue with priority if specified arguments = {} if priority is not None: - arguments['x-max-priority'] = 10 # Set the maximum priority level + arguments['x-max-priority'] = 10 channel.queue_declare(queue=queue_name, durable=True, arguments=arguments) - # Publish the message with the specified priority properties = pika.BasicProperties( - delivery_mode=2, # Make message persistent - priority=priority if priority is not None else 0 # Default to 0 if no priority + delivery_mode=2, + priority=priority if priority is not None else 0 ) - channel.basic_publish( exchange='', routing_key=queue_name, diff --git a/protollm_tools/sdk/tests/protollm_sdk/object_interface/unit/test_rabbit_mq_wrapper.py b/protollm_tools/sdk/tests/protollm_sdk/object_interface/unit/test_rabbit_mq_wrapper.py index 03ffbf2..b9d6117 100644 --- a/protollm_tools/sdk/tests/protollm_sdk/object_interface/unit/test_rabbit_mq_wrapper.py +++ b/protollm_tools/sdk/tests/protollm_sdk/object_interface/unit/test_rabbit_mq_wrapper.py @@ -46,20 +46,18 @@ def test_publish_message_with_priority(rabbit_wrapper, mock_pika): rabbit_wrapper.publish_message(queue_name, message, priority=priority) - # Проверяем, что очередь была объявлена с аргументом 'x-max-priority' mock_pika.queue_declare.assert_called_once_with( queue=queue_name, durable=True, - arguments={"x-max-priority": 10} # Убедитесь, что максимальный приоритет соответствует вашему коду + arguments={"x-max-priority": 10} ) - # Проверяем, что сообщение было опубликовано с заданным приоритетом mock_pika.basic_publish.assert_called_once_with( exchange="", routing_key=queue_name, body=json.dumps(message), properties=pika.BasicProperties( - delivery_mode=2, # Сделать сообщение постоянным + delivery_mode=2, priority=priority ), ) diff --git a/pyproject.toml b/pyproject.toml index d3e907e..fc71936 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,9 +1,9 @@ [tool.poetry] +readme = "README_en.rst" name = "ProtoLLM" version = "0.1.0" description = "" authors = ["aimclub"] -readme = "README.rst" [tool.poetry.dependencies]