AI-система обнаружения экспертизы в организации

Проектируем и внедряем системы искусственного интеллекта: от прототипа до production-ready решения. Наша команда объединяет экспертизу в машинном обучении, дата-инжиниринге и MLOps, чтобы AI работал не в лаборатории, а в реальном бизнесе.
Показано 1 из 1 услугВсе 1566 услуг
AI-система обнаружения экспертизы в организации
Средняя
~2-4 недели
Часто задаваемые вопросы
Направления AI-разработки
Этапы разработки AI-решения
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1218
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1161
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    853
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1047
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    561
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    825

Разработка AI-системы поиска экспертизы внутри компании

Expertise Locator — система, которая помогает сотрудникам найти коллег с нужными знаниями и опытом. В крупной организации не очевидно, кто разбирается в конкретной технологии, отраслевом регулировании или имел опыт решения похожей задачи. AI строит граф экспертизы из неструктурированных данных.

Источники сигналов о экспертизе

Формальные: профиль в корпоративной системе, HR-данные о роли и образовании, сертификаты, история проектов.

Неформальные: публикации во внутренней wiki (Confluence), комментарии в code review (GitHub/GitLab), вопросы/ответы во внутреннем Slack, авторство документов, упоминания в email-переписке.

Внешние: LinkedIn (с согласия сотрудника), публикации в блогах, выступления на конференциях, GitHub профиль.

Построение профиля экспертизы

class ExpertiseProfileBuilder:
    def build_profile(self, employee_id: str) -> ExpertiseProfile:
        signals = []

        # Confluence: анализ написанных страниц
        wiki_pages = self.confluence.get_authored_pages(employee_id)
        for page in wiki_pages:
            topics = self.topic_extractor.extract(page.content)
            signals.extend([ExpertiseSignal(
                source="wiki",
                topic=t.topic,
                strength=t.score * page.views / 100,  # популярные страницы = больший вес
                evidence_url=page.url
            ) for t in topics])

        # GitHub: коммиты по типам файлов и библиотекам
        commits = self.github.get_commits(employee_id)
        tech_usage = analyze_tech_stack(commits)
        signals.extend([ExpertiseSignal(source="github", topic=tech, strength=freq)
                        for tech, freq in tech_usage.items()])

        # Slack: темы обсуждений, на которые отвечает сотрудник
        slack_answers = self.slack.get_answers_given(employee_id)
        answer_topics = self.topic_extractor.extract_batch([a.text for a in slack_answers])
        signals.extend(answer_topics)

        # Агрегация: взвешенная сумма по источникам
        expertise_map = aggregate_signals(signals)

        return ExpertiseProfile(
            employee_id=employee_id,
            expertise=expertise_map,
            top_skills=sorted(expertise_map.items(), key=lambda x: x[1], reverse=True)[:20],
            last_updated=datetime.utcnow()
        )

Поиск эксперта

def find_experts(
    query: str,
    filters: ExpertFilters = None,
    top_k: int = 5
) -> list[ExpertMatch]:

    # Семантическое сопоставление запроса с профилями экспертизы
    query_embedding = encoder.encode(query)
    expert_embeddings = load_expert_embeddings()

    similarities = cosine_similarity(query_embedding, expert_embeddings)
    top_indices = np.argsort(similarities)[-top_k:][::-1]

    results = []
    for idx in top_indices:
        expert = experts[idx]

        # Применение фильтров: отдел, локация, доступность
        if filters and not filters.matches(expert):
            continue

        results.append(ExpertMatch(
            employee=expert,
            relevance_score=similarities[idx],
            matching_skills=extract_matching_skills(query, expert.expertise),
            availability=check_calendar_availability(expert.employee_id),
            evidence=[s for s in expert.signals if s.relevance_to(query) > 0.6]
        ))

    return results

Уведомление о конфиденциальности

Система строится на данных, которые сотрудники создают в рабочих инструментах. Важно: явное уведомление сотрудников о том, какие данные используются, возможность отказаться от отдельных источников, запрет на использование данных в HR-оценке (только для помощи коллегам).

Граф знаний компании

Помимо поиска людей — граф знаний показывает: какие технологии/темы покрыты хорошо, где есть риск single point of failure (один эксперт в области), кто является ключевыми коннекторами между командами. Для HR и топ-менеджмента — основа для решений о найме и развитии компетенций.