npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

n8n-nodes-psychology-ai-deepseek

v1.0.0

Published

Psychology AI System - Custom n8n nodes for DeepSeek API integration with psychology content analysis

Downloads

26

Readme

Psychology AI System - DeepSeek n8n Integration

Комплексная интеграция DeepSeek API для n8n с поддержкой анализа психологического контента и генерации контента в различных форматах.

🚀 Возможности

Основные операции

  • Chat Completion - Базовое текстовое завершение
  • Content Analysis - Анализ психологического контента
  • Content Generation - Генерация контента в 5 форматах

Типы анализа

  • Quality Assessment - Оценка качества и релевантности
  • Sentiment Analysis - Анализ эмоционального тона
  • Readability Analysis - Оценка читаемости
  • Topic Extraction - Извлечение тем и ключевых слов
  • Comprehensive Analysis - Полный анализ всех метрик

Форматы генерации контента

  • Quick Fact - Краткие факты (≤200 символов)
  • Lifehack - Практические советы (≤300 символов)
  • Science Simplified - Упрощенные объяснения (≤450 символов)
  • Practical Advice - Практические рекомендации (≤400 символов)
  • Motivation - Мотивационный контент (≤300 символов)

📦 Установка

🔧 Метод 1: Установка как npm пакет (Рекомендуемый)

1. Подготовка пакета

cd /Users/yurik./dev/psychology-ai-system/n8n-nodes

# Установка зависимостей
npm install

# Компиляция TypeScript
npm run build

# Создание npm пакета
npm pack

2. Установка в n8n

# Если n8n установлен глобально
npm install -g n8n-nodes-psychology-ai-deepseek

# Если используете Docker
# Добавьте в Dockerfile:
# RUN npm install n8n-nodes-psychology-ai-deepseek

# Если используете n8n через npx
npm install n8n-nodes-psychology-ai-deepseek

🐳 Метод 2: Docker с кастомными нодами

1. Создайте Dockerfile

FROM n8nio/n8n:latest

# Установите кастомные ноды
USER root
COPY n8n-nodes /data/n8n-nodes-psychology-ai-deepseek
WORKDIR /data/n8n-nodes-psychology-ai-deepseek
RUN npm install && npm run build

# Установите пакет глобально
RUN npm install -g .

USER node
WORKDIR /home/node

2. Запустите контейнер

docker build -t n8n-with-deepseek .
docker run -p 5678:5678 n8n-with-deepseek

📁 Метод 3: Локальная разработка

1. Скопируйте файлы в n8n

# Найдите папку n8n
npm list -g n8n

# Скопируйте скомпилированные ноды
cp -r /Users/yurik./dev/psychology-ai-system/n8n-nodes/dist/* \
  /path/to/n8n/nodes/

2. Перезапустите n8n

# Остановите n8n
pkill -f n8n

# Запустите заново
n8n start

⚙️ Метод 4: n8n Community Nodes (Будущее)

1. Публикация в npm registry

cd /Users/yurik./dev/psychology-ai-system/n8n-nodes

# Обновите package.json с правильными метаданными
npm publish

2. Установка через n8n UI

  1. Откройте n8n
  2. Перейдите в SettingsCommunity Nodes
  3. Введите n8n-nodes-psychology-ai-deepseek
  4. Нажмите Install

🔑 Настройка учетных данных

1. Создайте DeepSeek API credentials

  1. В n8n перейдите в Credentials
  2. Нажмите + Add Credential
  3. Найдите Psychology AI - DeepSeek API
  4. Заполните:
    • API Key: Ваш ключ от DeepSeek
    • Base URL: https://api.deepseek.com
  5. Нажмите Save

2. Получите API ключ DeepSeek

# Зарегистрируйтесь на https://platform.deepseek.com
# Перейдите в API Keys
# Создайте новый ключ
# Скопируйте ключ в n8n credentials

🧪 Тестирование установки

1. Создайте тестовый workflow

{
  "nodes": [
    {
      "name": "Start",
      "type": "n8n-nodes-base.start",
      "position": [240, 300]
    },
    {
      "name": "DeepSeek Test",
      "type": "n8n-nodes-psychology-ai-deepseek.deepSeek",
      "position": [460, 300],
      "parameters": {
        "operation": "chatCompletion",
        "prompt": "Hello, this is a test!",
        "model": "deepseek-chat"
      },
      "credentials": {
        "deepSeekApi": "your-credential-name"
      }
    }
  ],
  "connections": {
    "Start": {
      "main": [
        [
          {
            "node": "DeepSeek Test",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

2. Выполните workflow

  1. Сохраните workflow
  2. Нажмите Execute Workflow
  3. Проверьте результат

🔧 Troubleshooting

Проблема: Нод не появляется в списке

# Проверьте установку
npm list n8n-nodes-psychology-ai-deepseek

# Проверьте логи n8n
n8n start --verbose

# Убедитесь что package.json содержит правильные n8n метаданные

Проблема: Ошибки компиляции

# Переустановите зависимости
cd n8n-nodes
rm -rf node_modules package-lock.json
npm install

# Пересоберите
npm run build

Проблема: API ключ не работает

# Тестируйте ключ напрямую
curl -H "Authorization: Bearer YOUR_API_KEY" \
     -H "Content-Type: application/json" \
     https://api.deepseek.com/models

📝 Альтернативные варианты

Вариант 1: n8n Cloud

  • Загрузите ноды через n8n Cloud interface
  • Следуйте инструкциям для community nodes

Вариант 2: Self-hosted n8n

# Клонируйте n8n
git clone https://github.com/n8n-io/n8n.git
cd n8n

# Добавьте ваши ноды в packages/nodes-base
cp -r /path/to/your/nodes packages/nodes-base/nodes/

# Пересоберите n8n
npm run build

# Запустите
npm run start

🚀 Production Setup

Docker Compose

version: '3.8'
services:
  n8n:
    image: n8nio/n8n:latest
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=password
    volumes:
      - ./n8n-data:/home/node/.n8n
      - ./n8n-nodes:/data/custom-nodes
    command: >
      sh -c "cd /data/custom-nodes && 
             npm install && 
             npm run build && 
             npm install -g . && 
             n8n start"

3. Добавление в workflow

  1. Добавьте DeepSeek node в ваш workflow
  2. Выберите операцию
  3. Настройте параметры
  4. Подключите учетные данные

Примечание: После установки Psychology AI DeepSeek нод будет доступен в категории Transform с иконкой DeepSeek!

🔧 Конфигурация

Основные параметры

{
  model: 'deepseek-chat' | 'deepseek-coder',
  temperature: 0.3,           // 0-2, контроль случайности
  maxTokens: 2000,           // Максимум токенов в ответе
  timeout: 60,               // Таймаут в секундах
  maxRetries: 3,             // Количество повторных попыток
}

Exponential Backoff Retry

  • 1-я попытка: 1 секунда
  • 2-я попытка: 2 секунды
  • 3-я попытка: 4 секунды
  • 4-я попытка: 8 секунд
  • 5-я попытка: 16 секунд

📊 Мониторинг и квоты

Отслеживание использования

// Автоматически отслеживается:
- Количество токенов (prompt + completion)
- Время ответа
- Успешность запросов
- Стоимость запросов
- Ошибки и повторные попытки

Лимиты квот

// Настраиваемые лимиты:
{
  dailyTokens: 100000,
  monthlyTokens: 1000000,
  dailyRequests: 1000,
  monthlyRequests: 10000,
  dailyCost: 10.0,
  monthlyCost: 100.0
}

🎯 Примеры использования

1. Анализ качества контента

{
  "operation": "contentAnalysis",
  "content": "Текст статьи для анализа...",
  "analysisType": "quality",
  "model": "deepseek-chat"
}

Ответ:

{
  "quality_metrics": {
    "relevance_score": 8.5,
    "mass_appeal": 7.0,
    "scientific_quality": 9.0,
    "adaptation_difficulty": 6.0
  },
  "recommendations": {
    "target_formats": ["lifehack", "science_simplified"],
    "content_improvements": ["Добавить больше примеров"]
  }
}

2. Генерация контента

{
  "operation": "contentGeneration",
  "content": "Исходная статья о нейропластичности...",
  "formats": ["quickFact", "lifehack", "motivation"]
}

Ответ:

{
  "generated_content": {
    "quick_fact": "🧠 Ваш мозг формирует новые нейронные связи даже во взрослом возрасте! #Нейропластичность",
    "lifehack": "💡 Практикуйте технику 5-4-3-2-1: назовите 5 вещей, которые видите, 4 - которые трогаете, 3 - слышите, 2 - чувствуете запах, 1 - на вкус. Мгновенное снятие тревоги! 🌟",
    "motivation": "✨ Каждый маленький шаг к лучшему ментальному здоровью важен. У вас есть сила изменить свои мысли и создать позитивные изменения! 🌱💚"
  }
}

3. Комплексный анализ

{
  "operation": "contentAnalysis", 
  "content": "Статья о когнитивно-поведенческой терапии...",
  "analysisType": "comprehensive"
}

🛠 Prompt Templates

Встроенные шаблоны

  • qualityAssessment - Оценка качества контента
  • sentimentAnalysis - Анализ настроения
  • contentGeneration - Генерация контента
  • readabilityAnalysis - Анализ читаемости
  • topicExtraction - Извлечение тем

Кастомные шаблоны

import { buildPromptFromTemplate } from './prompts/PromptTemplates';

const prompt = buildPromptFromTemplate('qualityAssessment', {
  content: 'Ваш текст здесь'
});

🔍 Валидация ответов

Автоматическая валидация

  • Проверка структуры JSON
  • Валидация обязательных полей
  • Проверка числовых диапазонов
  • Проверка лимитов символов

Типы ошибок

{
  "isValid": false,
  "errors": [
    "Missing required field: sentiment_score",
    "Invalid relevance_score: must be between 0 and 10"
  ],
  "warnings": [
    "Response was truncated due to length limit"
  ]
}

📈 Производительность

Метрики

  • Среднее время ответа: ~2-5 секунд
  • Успешность запросов: >95%
  • Поддержка до 64K токенов контекста
  • Автоматическое управление квотами

Оптимизация

  • Кэширование частых запросов
  • Batch обработка для множественных запросов
  • Интеллектуальная оптимизация промптов
  • Мониторинг производительности в реальном времени

🔒 Безопасность

Защита данных

  • Безопасное хранение API ключей
  • Санитизация входных данных
  • Защита от XSS и инъекций
  • Логирование только метаданных

Аудит

// Все запросы логируются:
{
  timestamp: "2024-01-15T10:30:00Z",
  operation: "contentAnalysis",
  success: true,
  tokens: 1250,
  responseTime: 3200,
  workflowId: "workflow_123"
}

🧪 Тестирование

Тестовые сценарии

# Установка зависимостей
npm install

# Компиляция TypeScript
npm run build

# Проверка линтером
npm run lint

# Форматирование кода
npm run format

Тестовые данные

// Примеры для тестирования
const testContent = {
  shortArticle: "Краткая статья о стрессе...",
  longArticle: "Детальная статья о когнитивной психологии...",
  invalidContent: "",
  scientificContent: "Исследование нейропластичности..."
};

📚 API Reference

DeepSeek Node

interface DeepSeekNodeParameters {
  operation: 'chatCompletion' | 'contentAnalysis' | 'contentGeneration';
  model: 'deepseek-chat' | 'deepseek-coder';
  prompt?: string;
  content?: string;
  analysisType?: 'quality' | 'sentiment' | 'readability' | 'topics' | 'comprehensive';
  formats?: string[];
  advancedOptions?: {
    temperature?: number;
    maxTokens?: number;
    timeout?: number;
    maxRetries?: number;
    systemMessage?: string;
  };
  additionalFields?: {
    includeUsage?: boolean;
    includeMetadata?: boolean;
    validateJson?: boolean;
  };
}

Response Types

interface AnalysisResponse {
  operation: string;
  timestamp: string;
  result: QualityMetrics | SentimentAnalysis | any;
  usage?: TokenUsage;
  metadata?: ResponseMetadata;
  finish_reason: string;
}

interface GenerationResponse {
  operation: string;
  result: {
    generated_content: ContentFormats;
    metadata: GenerationMetadata;
  };
  usage?: TokenUsage;
}

🔧 Troubleshooting

Частые проблемы

1. API Key ошибки

Error: Invalid DeepSeek API key
Solution: Проверьте API ключ в настройках учетных данных

2. Превышение квоты

Error: API quota exceeded
Solution: Проверьте использование через getQuotaStatus()

3. Таймауты

Error: Request timeout
Solution: Увеличьте timeout в настройках или уменьшите размер запроса

4. Валидация JSON

Error: Failed to parse JSON response
Solution: Проверьте промпт и включите validateJson: false для отладки

Отладка

// Включите подробное логирование
console.log('DeepSeek Request:', requestBody);
console.log('DeepSeek Response:', response);
console.log('Validation Result:', validationResult);

📄 Лицензия

MIT License - см. LICENSE файл

🤝 Поддержка

🚀 Roadmap

v1.1.0

  • [ ] Поддержка streaming ответов
  • [ ] Расширенная аналитика
  • [ ] Кастомные промпт шаблоны через UI

v1.2.0

  • [ ] Batch API поддержка
  • [ ] Автоматическая оптимизация промптов
  • [ ] Интеграция с другими AI провайдерами

v2.0.0

  • [ ] Графический интерфейс для мониторинга
  • [ ] Машинное обучение для оптимизации
  • [ ] Enterprise функции