Clean news:
Clean News is a news-curation project that collects articles from publicly accessible sources, removes political and emotional content as well as promotional or non-news material, and provides concise, factual updates in Russian. By leveraging AI-based text processing and minimal manual oversight, each article retains only essential information in a neutral presentation. A direct link to the original source is always included for additional context.
Important Statement:
Public Sources Notice
All news articles featured on this platform are sourced from publicly available outlets. Aside from a preliminary filtering step to exclude non-news or excessively promotional content (as guided by our “shouldSkip” process), no additional manual or editorial moderation occurs. This ensures that the core essence of the published material remains as close to the original news report as possible.
Source Attribution
Each article published here includes a direct link to its original source. We believe that proper attribution is vital, not only for transparency and credibility but also for allowing readers to delve deeper into the information they find relevant. Our goal is to facilitate informed readership by offering clear paths to further exploration.
State of the product
Because our system relies on AI technology that is under constant refinement, there may be occasional inaccuracies, omissions, or other unexpected outcomes. We continuously work to improve the AI’s reliability and accuracy by iterating on our models and prompts. Reader feedback is greatly appreciated as we strive to provide the most credible, concise, and neutral news updates possible.
1. Data Ingestion
- Multiple Sources: News articles are gathered from a variety of external sources.
- JSON Format: Each article arrives as a JSON object, including:
- The text/body of the article.
- A boolean field indicating media presence (
hasMedia: <true|false>
).
2. Preliminary Validation
ShouldSkip Check:
A prompt called shouldSkipMessagePrompt
determines if the article is valid news or should be skipped.
shouldSkipMessagePrompt
export const shouldSkipMessagePrompt = {
role: "system",
content: `
You are a text validator. Your task is to determine if the provided text is a valid news article.
At the end of the text you will receive "Has media: " which represents that text contains media or not.
A valid news article typically contains information about events, reports, live reports, or announcements that are informative and relevant to the public.
Exclude content that is:
- General essence of the text is limited advertisements or promotional material
- Questions or user inquiries
- Opinions, personal stories, or irrelevant text
- Spam
Not exclude content:
- If the text primarily communicates valid news info.
- If the article contains "Has media: true" and the general essence of the text is not limited to advertising material.
- If the article contains an advertisement call to action for subscribing, but it is not the main essence of the text.
Return a JSON object with the following schema:
{
"skip":
}
- Set "skip" to true if the text is NOT a valid news article.
- Set "skip" to false if the text is a valid news article.
Only return the JSON response without any additional commentary or explanation.
`,
};
- Skip if the text is predominantly:
- Advertising or promotional with no real news value.
- Personal stories, opinion pieces, Q&A, spam, or irrelevant content.
- Do Not Skip if the article:
- Contains genuine news information or announcements.
- Has minor promotional elements but still focuses on real events or reports.
3. Content Filtering & Editing
-
Core Prompt (
processArticlePrompt
):
Removes political bias and emotional language, retaining only essential information (who, what, when, where, why, how).
processArticlePrompt
export const processArticlePrompt = {
role: "system",
content: `
You are the Russian News editor. You will receive a single news article as a JSON object.
At the end of the text you will receive "Has media: " which represents that text contains media or not.
For the given article, do the following:
a. Remove all political and emotional coloring, leaving only the core information.
b. Assign a trust factor:
- Increase the trust factor if the original article mentions sources, contains 'Has media: true' or is about an important event (e.g., rocket alarms, terror acts, military actions, etc.).
- Downgrade the trust factor if the article lacks links, seems semantically unreliable, uses hate language, or has any emotional bias.
c. Translate the processed content into Russian.
DO NOT add any additional information to the original article.
Return a JSON object that follows this schema:
{
"content": "",
"trust_factor": "",
"explanation": ""
}
`,
};
-
Trust Factor:
- Increases for credible sources, media evidence, and major verified events (e.g., emergencies).
- Decreases if there are no sources, the text appears unreliable, or contains hate speech.
-
Translation:
The filtered text is translated into Russian, preserving neutrality and clarity.
4. Structured Output
JSON Output:
The final JSON must include:
{
"content": "",
"trust_factor": "",
"explanation": ""
}
No Extra Data: The output should not include any additional commentary beyond the specified fields.
5. Publication
- Telegram Channel: The processed article is published to the Clean News Telegram channel.
- Objective Delivery: Subscribers receive concise, depoliticized, and fact-based news in Russian.
6. Continuous Improvement
-
Feedback & Iteration:
The system is refined based on performance and feedback.
-
Prompt Updates:
Both
shouldSkipMessagePrompt
and systemMessage
may be updated for greater precision and clarity.
Clean news:
Clean News — это проект по формированию новостной подборки, который агрегирует материалы из открытых источников, удаляет политическую и эмоциональную окраску, а также рекламный и нерелевантный контент, и в итоге публикует сжатую, основанную на фактах информацию на русском языке. Благодаря использованию технологий обработки текста на основе искусственного интеллекта при минимальном ручном вмешательстве сохраняются только важные детали в нейтральной подаче. Каждая статья содержит прямую ссылку на исходный материал для дополнительного ознакомления.
Важно:
Уведомление об общественных источниках
Все новости, представленные на этой платформе, берутся из общедоступных источников. За исключением предварительной фильтрации, которая исключает нерелевантный или чрезмерно рекламный контент (в соответствии с нашей системой «shouldSkip»), никакой дополнительной ручной или редакционной модерации не проводится. Это гарантирует, что основная суть публикуемого материала остается максимально близкой к исходному новостному сообщению.
Атрибуция источника
Каждая статья, размещенная здесь, содержит прямую ссылку на свой оригинальный источник. Мы считаем, что корректная атрибуция имеет решающее значение не только для прозрачности и надежности, но и для того, чтобы читатели могли глубже изучить интересующую их информацию. Наша цель — содействовать информированному чтению, предоставляя понятные пути для дальнейшего ознакомления.
Состояние проекта
Поскольку наша система опирается на технологию ИИ, которая постоянно совершенствуется, возможны случайные неточности, пропуски или другие непредвиденные результаты. Мы непрерывно работаем над повышением надежности и точности ИИ, совершенствуя наши модели и инструкции. Мы ценим обратную связь от читателей, поскольку стремимся предоставлять наиболее достоверные, сжатые и нейтральные новости.
1. Data Ingestion
- Multiple Sources: News articles are gathered from a variety of external sources.
- JSON Format: Each article arrives as a JSON object, including:
- The text/body of the article.
- A boolean field indicating media presence (
hasMedia: <true|false>
).
2. Preliminary Validation
ShouldSkip Check:
A prompt called shouldSkipMessagePrompt
determines if the article is valid news or should be skipped.
1. Сбор Данных
- Различные Источники: Новости поступают из множества внешних источников.
- Формат JSON: Каждая статья представлена в формате JSON, включая:
- Текст/содержимое статьи.
- Булевое поле, указывающее на наличие медиа (
Has media: <true|false>
).
2. Предварительная Валидация
Проверка shouldSkip:
Специальный промпт shouldSkipMessagePrompt
определяет, является ли текст валидной новостной статьёй или его следует пропустить.
shouldSkipMessagePrompt
export const shouldSkipMessagePrompt = {
role: "system",
content: `
You are a text validator. Your task is to determine if the provided text is a valid news article.
At the end of the text you will receive "Has media: " which represents that text contains media or not.
A valid news article typically contains information about events, reports, live reports, or announcements that are informative and relevant to the public.
Exclude content that is:
- General essence of the text is limited advertisements or promotional material
- Questions or user inquiries
- Opinions, personal stories, or irrelevant text
- Spam
Not exclude content:
- If the text primarily communicates valid news info.
- If the article contains "Has media: true" and the general essence of the text is not limited to advertising material.
- If the article contains an advertisement call to action for subscribing, but it is not the main essence of the text.
Return a JSON object with the following schema:
{
"skip":
}
- Set "skip" to true if the text is NOT a valid news article.
- Set "skip" to false if the text is a valid news article.
Only return the JSON response without any additional commentary or explanation.
`,
};
- Пропустить (skip), если в тексте преимущественно:
- Реклама или промо-материалы без реальной новостной ценности.
- Личные истории, мнения, формат Q&A, спам или нерелевантный контент.
- Не пропускать (не skip), если статья:
- Содержит полезную информацию или новостные данные.
- Имеет незначительные рекламные элементы, но при этом ориентирована на реальные события или отчёты.
3. Фильтрация и Редактирование Контента
-
Основной Промпт (
processArticlePrompt
):
Удаляет политическую предвзятость и эмоциональную окраску, сохраняя только ключевую информацию (кто, что, когда, где, почему, как).
processArticlePrompt
export const processArticlePrompt = {
role: "system",
content: `
You are the Russian News editor. You will receive a single news article as a JSON object.
At the end of the text you will receive "Has media: " which represents that text contains media or not.
For the given article, do the following:
a. Remove all political and emotional coloring, leaving only the core information.
b. Assign a trust factor:
- Increase the trust factor if the original article mentions sources, contains 'Has media: true' or is about an important event (e.g., rocket alarms, terror acts, military actions, etc.).
- Downgrade the trust factor if the article lacks links, seems semantically unreliable, uses hate language, or has any emotional bias.
c. Translate the processed content into Russian.
DO NOT add any additional information to the original article.
Return a JSON object that follows this schema:
{
"content": "",
"trust_factor": "",
"explanation": ""
}
`,
};
-
Фактор Доверия:
- Повышается, если в статье упоминаются надёжные источники, есть медиа или статья о важных событиях (например, чрезвычайные ситуации).
- Понижается, если нет упоминания источников, текст выглядит ненадёжным или содержит разжигание ненависти.
-
Перевод:
Очищенный от субъективности текст переводится на русский язык с сохранением нейтральности и ясности.
4. Структурированный Вывод
Формат JSON:
Итоговый JSON содержит:
{
"content": "<переработанный контент на русском языке>",
"trust_factor": "<уровень доверия>",
"explanation": "<краткое объяснение>"
}
Без Дополнительных Данных:
Вывод не должен включать никакой дополнительной информации помимо указанных полей.
5. Публикация
- Канал в Telegram: Отфильтрованная статья публикуется в телеграм-канале Clean News.
- Объективная Подача: Подписчики получают лаконичные, нейтральные и основанные на фактах новости на русском языке.
6. Постоянное Улучшение
-
Обратная Связь и Итерации:
Система дорабатывается с учётом обратной связи и результатов работы.
-
Обновление Промптов:
Промпты
shouldSkipMessagePrompt
и systemMessage
могут обновляться для повышения точности и ясности.