Name | rumoderatorai JSON |
Version |
1.6.2
JSON |
| download |
home_page | https://moderator.omni-devel.ru |
Summary | Библиотека для использования Omni Antispam API (https://moderator.omni-devel.ru) |
upload_time | 2025-07-24 00:53:50 |
maintainer | None |
docs_url | None |
author | PyWebSol |
requires_python | >=3.8 |
license | None |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# RuModeratorAI
Библиотека для использования Omni Antispam API (https://moderator.omni-devel.ru), в прошлом - RuModeratorAI API.
## Установка
```bash
pip install rumoderatorai
```
## Пример использования
```python
from rumoderatorai import Client, Context, ChatContext
import asyncio
from PIL import Image
import os
async def main():
async with Client(
api_key=os.getenv("RUMODERATORAI_API_KEY")
) as client:
context = Context(
chat_context=ChatContext(
title="Test group",
topic_title="Test topic"
),
allowed_rules=[
"mutual subscriptions",
"job offers",
"cars selling"
]
)
text_response = await client.get_text_class("Hello, world!", context=context)
print(text_response)
profile_response = await client.get_profile_class(
username="test",
first_name="test",
last_name="test",
description="test",
is_premium=False,
)
print(profile_response)
image = Image.open("tests/image.png")
image_response = await client.get_image_class(image)
print(image_response)
ocr_response = await client.get_ocr(image)
print(ocr_response)
multimodal_text_response = await client.get_multimodal_text_class(
text="Всем привет!",
images=[
"tests/image_spam.png", "tests/image_not_spam.png", "tests/image_spam_2.png"
],
context=context
)
print(multimodal_text_response)
stats_response = await client.get_stats()
print(stats_response)
key_info_response = await client.get_key_info()
print(key_info_response)
prediction_response = await client.get_prediction(unique_id=text_response.unique_id)
print(prediction_response)
ips_response = await client.get_ips()
print(ips_response)
prices_response = await client.get_prices()
print(prices_response)
asyncio.run(main())
```
Или можно использовать без async with:
```python
from rumoderatorai import Client, Context, ChatContext
import asyncio
from PIL import Image
import os
async def main():
client = Client(
api_key=os.getenv("RUMODERATORAI_API_KEY"),
)
await client.init()
context = Context(
chat_context=ChatContext(
title="Test group",
topic_title="Test topic"
),
allowed_rules=[
"job offers",
"cars selling"
]
)
text_response = await client.get_text_class("Hello, world!", context=context)
print(text_response)
profile_response = await client.get_profile_class(
username="test",
first_name="test",
last_name="test",
description="test",
is_premium=False,
)
print(profile_response)
image = Image.open("tests/image.png")
image_response = await client.get_image_class(image)
print(image_response)
ocr_response = await client.get_ocr(image)
print(ocr_response)
multimodal_text_response = await client.get_multimodal_text_class(
text="Всем привет!",
images=[
"tests/image_spam.png", "tests/image_not_spam.png", "tests/image_spam_2.png"
],
context=context
)
print(multimodal_text_response)
stats_response = await client.get_stats()
print(stats_response)
key_info_response = await client.get_key_info()
print(key_info_response)
prediction_response = await client.get_prediction(unique_id=text_response.unique_id)
print(prediction_response)
ips_response = await client.get_ips()
print(ips_response)
prices_response = await client.get_prices()
print(prices_response)
await client.close()
asyncio.run(main())
```
**Примечание:** Не забудьте установить переменную окружения `RUMODERATORAI_API_KEY` перед запуском кода.
Raw data
{
"_id": null,
"home_page": "https://moderator.omni-devel.ru",
"name": "rumoderatorai",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": "PyWebSol",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/c1/a0/3a78f61e9cdfe8b73a3e9a39feabc36a04a4bfc8fdfe62b0723108968957/rumoderatorai-1.6.2.tar.gz",
"platform": null,
"description": "# RuModeratorAI\n\n\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Omni Antispam API (https://moderator.omni-devel.ru), \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u043c - RuModeratorAI API.\n\n## \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n\n```bash\npip install rumoderatorai\n```\n\n## \u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\n```python\nfrom rumoderatorai import Client, Context, ChatContext\n\nimport asyncio\n\nfrom PIL import Image\n\nimport os\n\n\nasync def main():\n async with Client(\n api_key=os.getenv(\"RUMODERATORAI_API_KEY\")\n ) as client:\n context = Context(\n chat_context=ChatContext(\n title=\"Test group\",\n topic_title=\"Test topic\"\n ),\n allowed_rules=[\n \"mutual subscriptions\",\n \"job offers\",\n \"cars selling\"\n ]\n )\n\n text_response = await client.get_text_class(\"Hello, world!\", context=context)\n print(text_response)\n\n profile_response = await client.get_profile_class(\n username=\"test\",\n first_name=\"test\",\n last_name=\"test\",\n description=\"test\",\n is_premium=False,\n )\n print(profile_response)\n\n image = Image.open(\"tests/image.png\")\n image_response = await client.get_image_class(image)\n print(image_response)\n\n ocr_response = await client.get_ocr(image)\n print(ocr_response)\n\n multimodal_text_response = await client.get_multimodal_text_class(\n text=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!\",\n images=[\n \"tests/image_spam.png\", \"tests/image_not_spam.png\", \"tests/image_spam_2.png\"\n ],\n context=context\n )\n print(multimodal_text_response)\n\n stats_response = await client.get_stats()\n print(stats_response)\n\n key_info_response = await client.get_key_info()\n print(key_info_response)\n\n prediction_response = await client.get_prediction(unique_id=text_response.unique_id)\n print(prediction_response)\n\n ips_response = await client.get_ips()\n print(ips_response)\n\n prices_response = await client.get_prices()\n print(prices_response)\n\n\nasyncio.run(main())\n```\n\n\u0418\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u0435\u0437 async with:\n```python\nfrom rumoderatorai import Client, Context, ChatContext\n\nimport asyncio\n\nfrom PIL import Image\n\nimport os\n\n\nasync def main():\n client = Client(\n api_key=os.getenv(\"RUMODERATORAI_API_KEY\"),\n )\n await client.init()\n\n context = Context(\n chat_context=ChatContext(\n title=\"Test group\",\n topic_title=\"Test topic\"\n ),\n allowed_rules=[\n \"job offers\",\n \"cars selling\"\n ]\n )\n\n text_response = await client.get_text_class(\"Hello, world!\", context=context)\n print(text_response)\n\n profile_response = await client.get_profile_class(\n username=\"test\",\n first_name=\"test\",\n last_name=\"test\",\n description=\"test\",\n is_premium=False,\n )\n print(profile_response)\n\n image = Image.open(\"tests/image.png\")\n image_response = await client.get_image_class(image)\n print(image_response)\n\n ocr_response = await client.get_ocr(image)\n print(ocr_response)\n\n multimodal_text_response = await client.get_multimodal_text_class(\n text=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!\",\n images=[\n \"tests/image_spam.png\", \"tests/image_not_spam.png\", \"tests/image_spam_2.png\"\n ],\n context=context\n )\n print(multimodal_text_response)\n\n stats_response = await client.get_stats()\n print(stats_response)\n\n key_info_response = await client.get_key_info()\n print(key_info_response)\n\n prediction_response = await client.get_prediction(unique_id=text_response.unique_id)\n print(prediction_response)\n\n ips_response = await client.get_ips()\n print(ips_response)\n\n prices_response = await client.get_prices()\n print(prices_response)\n\n await client.close()\n\n\nasyncio.run(main())\n```\n\n**\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435:** \u041d\u0435 \u0437\u0430\u0431\u0443\u0434\u044c\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `RUMODERATORAI_API_KEY` \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u043a\u043e\u0434\u0430.\n",
"bugtrack_url": null,
"license": null,
"summary": "\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Omni Antispam API (https://moderator.omni-devel.ru)",
"version": "1.6.2",
"project_urls": {
"Homepage": "https://moderator.omni-devel.ru"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2460832808bc0db8ee92ddd920221f175b7678402ed23797ec127b04632f9ff1",
"md5": "442f5b373a7d698777019c1fe4abd73d",
"sha256": "721a9e0d3f6b0eb67576a1f6a9f32c560dd9d141c5c1240c40aecf1b61bd1aef"
},
"downloads": -1,
"filename": "rumoderatorai-1.6.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "442f5b373a7d698777019c1fe4abd73d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 9364,
"upload_time": "2025-07-24T00:53:49",
"upload_time_iso_8601": "2025-07-24T00:53:49.517796Z",
"url": "https://files.pythonhosted.org/packages/24/60/832808bc0db8ee92ddd920221f175b7678402ed23797ec127b04632f9ff1/rumoderatorai-1.6.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c1a03a78f61e9cdfe8b73a3e9a39feabc36a04a4bfc8fdfe62b0723108968957",
"md5": "37154b4fd8a1d8ec933bdb5cfd7c0792",
"sha256": "23166f40e3e3099ad0d7393b2a2572f1b5a16bf4a79ffff1a16b31abb5d47a3a"
},
"downloads": -1,
"filename": "rumoderatorai-1.6.2.tar.gz",
"has_sig": false,
"md5_digest": "37154b4fd8a1d8ec933bdb5cfd7c0792",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 9504,
"upload_time": "2025-07-24T00:53:50",
"upload_time_iso_8601": "2025-07-24T00:53:50.538456Z",
"url": "https://files.pythonhosted.org/packages/c1/a0/3a78f61e9cdfe8b73a3e9a39feabc36a04a4bfc8fdfe62b0723108968957/rumoderatorai-1.6.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-24 00:53:50",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "rumoderatorai"
}