ИИ-агент в когнитивном программировании сознания – объединяем RAG и LLM. Лэй Энстазия
метаданные статьи на открытые лицензии (например, Creative Commons).
Результат: Собраны релевантные статьи из научных источников.
1.1.3 Проверка данных на актуальность и релевантность
Пример: Фильтрация данных по дате и ключевым словам
1. Отфильтруйте устаревшие материалы:
```python
from datetime import datetime
def filter_recent_articles(articles, years=5):
threshold_date = datetime.now().year – years
return [article for article in articles if int(article.get("date", 0)) >= threshold_date]
filtered_articles = filter_recent_articles([
{"title": "Статья 1", "date": "2019"},
{"title": "Статья 2", "date": "2010"}
])
print("Актуальные статьи:", filtered_articles)
```
2. Проверка релевантности по ключевым словам:
```python
keywords = ["когнитивное программирование", "модель", "примеры"]
def filter_by_keywords(articles, keywords):
return [article for article in articles if any(keyword in article["summary"] for keyword in keywords)]
relevant_articles = filter_by_keywords(articles, keywords)
print("Релевантные статьи:", relevant_articles)
```
Результат: Оставлены только актуальные и релевантные материалы.
1.1.4 Организация файлов
Пример: Разделение данных по категориям
1. Структурируйте данные по типам:
```python
def organize_files(data):
categories = {"Теория": [], "Практика": [], "FAQ": []}
for item in data:
if "определение" in item["summary"].lower():
categories["Теория"].append(item)
elif "пример" in item["summary"].lower():
categories["Практика"].append(item)
elif "вопрос" in item["summary"].lower():
categories["FAQ"].append(item)
return categories
structured_data = organize_files(relevant_articles)
print("Структурированные данные:", structured_data)
```
2. Создание файловой структуры:
```python
import os
base_path = "./knowledge_base"
for category in structured_data:
os.makedirs(f"{base_path}/{category}", exist_ok=True)
for i, item in enumerate(structured_data[category]):
with open(f"{base_path}/{category}/doc_{i+1}.txt", "w", encoding="utf-8") as file:
file.write(item["summary"])
```
Результат: Данные распределены по категориям с удобной файловой организацией.
1.1.5 Пример полного процесса сбора данных
Этап 1: Сбор внутренних данных
Извлечены обучающие материалы компании.
Классифицированы на теоретические основы и практические примеры.
Этап 2: Сбор внешних данных
Собраны научные статьи по ключевым словам.
Удалены устаревшие и нерелевантные статьи.
Этап 3: Интеграция в базу знаний
Все данные структурированы по категориям: Теория, Практика, FAQ.
Установлена файловая структура для удобной обработки.
Результат: Получен качественный набор данных для обучения модели и наполнения базы знаний.
Эти подходы обеспечивают системный подход к сбору, проверке и организации данных, что улучшает качество ответов когнитивного тренажера.
1.2 Очистка данных
Процесс очистки:
Удаление шумов: Уберите HTML-теги, ненужные ссылки, форматирование Markdown или LaTeX. Удалите таблицы, изображения и мета-данные, если они не несут ключевой информации.
Фильтрация информации: Исключите дублирующиеся тексты (например, одинаковые статьи, появившиеся в нескольких источниках). Удалите неинформативные фрагменты, такие как