Method Article

Синтез научно обоснованных знаний и проверка гипотез: навигация по базам биомедицинских знаний с помощью объяснимого искусственного интеллекта и агентных систем

DOI:

10.3791/67525

June 13th, 2025

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

В этой статье описывается RUGGED (Retrieval Under Graph-Guided Explainable disease Distinction), который объединяет вывод большой языковой модели (LLM) с генерацией извлечения (RAG). Он опирается на данные из тщательно отобранных экспертами баз биомедицинских знаний и рецензируемых биомедицинских публикаций для синтеза новых знаний из актуальной информации, определения объяснимых и действенных прогнозов и определения перспективных направлений для исследований, основанных на гипотезах.

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Масштаб биомедицинских знаний, охватывающих научную литературу и курируемые базы знаний, представляет собой серьезную проблему для исследователей в области эффективной обработки, оценки и интерпретации результатов. Большие языковые модели (LLM) стали мощными инструментами для навигации по этому сложному ландшафту знаний, но могут вызывать галлюцинаторные реакции. Генерация с дополнением к поиску (RAG) имеет важное значение для идентификации релевантной информации для повышения точности и надежности. Этот протокол представляет собой RUGGED (Retrieval Under Graph-Guided Explainable Disease Distinction) — комплексный рабочий процесс, предназначенный для поддержки интеграции знаний, смягчения предвзятости, а также для изучения и проверки новых направлений исследований. Биомедицинская информация из публикаций и баз знаний синтезируется и анализируется с помощью анализа ассоциаций с помощью интеллектуального анализа текстов и объяснимых моделей прогнозирования графов для выявления потенциальных взаимосвязей между лекарствами и заболеваниями. Эти выводы, наряду с корпусом исходных текстов и базами знаний, включены в структуру, в которой используются LLM, усовершенствованные RAG, чтобы пользователи могли изучать гипотезы и исследовать лежащие в их основе механизмы. Клинический случай использования демонстрирует возможности RUGGED в оценке и рекомендации методов лечения аритмогенной кардиомиопатии (АКМП) и дилатационной кардиомиопатии (ДКМП), анализе назначаемых препаратов на предмет молекулярных взаимодействий и потенциальных новых применений. Платформа уменьшает галлюцинации LLM, выделяет практические выводы и оптимизирует исследование новых методов лечения.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Процесс исследования гипотез в биомедицинском предприятии имеет важное значение для выявления новых взаимозависимостей молекула-лекарство-заболевание, лежащих в основе патогенеза, и для раскрытия терапевтического потенциала 1,2. Этот процесс опирается на фактические данные из существующих биомедицинских знаний, синтезируя новые результаты на основе логических выводов, встроенных в рецензируемую литературу (например, >36 отчетов от PubMed), и интегрируя тщательно отобранные доказательства с высокой степенью достоверности, укоренившиеся в базах биомедицинских знаний. Последние достижения сокращают трудоемкую ручную работу за счет применения интеллектуального анализа текста в литературе corpra 3,4,5, а также использования анализа на основе графиков 6,7,8,9 для синтеза релевантной информации и раскрытия новых возможностей для исследования. Несмотря на эти усилия, современные подходы часто не поддерживают глубокого контекстуального понимания из-за фрагментарности данных. Кроме того, им не хватает способности делать выводы, основанные на фактических данных, и интерактивно исследовать новые гипотезы.

Недавние разработки в области больших языковых моделей (LLM) проливают новый свет на эти проблемы, демонстрируя высокий уровень контекстуального понимания путем обучения на огромных объемах информации по нескольким дисциплинам 10,11,12. В биомедицинской области LLM показали многообещающую роль в извлечении информации о пациенте13 и ответах на общие клинические вопросы14,15, в то время как приложения в области ответов на вопросы16 и полезности в первичной клинической помощи17 еще предстоит изучить. Эти модели демонстрируют способность рассуждать и делать выводы из сложных наборов данных, что делает их потенциально пригодными для исследования гипотез и синтеза знаний. Кроме того, некоторые модели поддерживают взаимодействие, подобное чату, для вовлечения пользователей и обеспечения динамического изучения тем, преодолевая традиционные границы поисковых систем и баз знаний, основанных на запросах18,19.

В дополнение к этим возможностям, LLM сталкиваются со значительными проблемами, такими как возможная галлюцинация информации, проявление необоснованной уверенности в потенциально неточных объяснениях, недостаточная интерпретируемость и восприимчивость к предвзятому или неприемлемому контенту 20,21,22,23,24. Применяемые непосредственно к руководству при принятии клинических решений, ответы и прогнозы, полученные с помощью LLM, имеют высокие ставки; Любые ошибки потенциально могут привести к дорогостоящим лабораторным экспериментам или негативно повлиять на траектории здоровья пациента25,26. Таким образом, надежные и заслуживающие доверия ответы LLM имеют первостепенное значение, поскольку их советы должны быть прочно укоренены в доказательствах. В этих сценариях интерпретируемость — это не роскошь, а необходимость для понимания того, почему эти модели делают те или иные прогнозы.

С этой целью Retrieval-Augmented Generation (RAG) представляет собой систему, предназначенную для минимизации галлюцинаций LLM, обоснования реакций LLM на доказательствах для повышения их точности и надежности. Этот подход обычно включает в себя извлечение релевантных фрагментов текста, таких как интеграция LLM (например, ChatGPT) с PubMed, что позволяет идентифицировать релевантные ссылки на запросы пользователей29,30. Не ограничиваясь текстом, извлечение из графов знаний (KG) показывает перспективность в применении к LLM для таких задач, как проверка фактов 31,32,33, прозрачное рассуждение 34,35,36, кодирование знаний37, улучшение ответов на вопросы38 и заполнение графов знаний 39. Кодируя фактическую информацию из проверенных источников, КГ повышают точность, прозрачность и надежность ответов LLM. Методы прогнозирования связей в этих графах используют глубокое обучение для выявления ранее скрытых связей между молекулами, лекарствами и болезнями 5,40,41. Последние достижения в области объяснимых прогнозов ИИ еще больше повышают прозрачность и интерпретируемость этих задач прогнозирования связей, обеспечивая потенциальную поддержку для интерпретации биомедицинских гипотез в качестве жизнеспособного направления для исследований 42,43,44. Эти достижения гарантируют, что ответы, полученные с помощью LLM, сбалансированы и основаны на фактических данных, что значительно повышает их применимость в биомедицинских предприятиях.

Этот протокол представляет RUGGED (Retrieval Under Graph-Guided Explainable Disease Distinction) как доступный и эффективный рабочий процесс для исследования и валидации клинических терапевтических идей (рис. 1). Этот протокол рабочего процесса использует обширные ресурсы биомедицинской литературы и баз знаний для извлечения и проверки релевантной информации, что позволяет осуществлять процессы поиска с учетом запросов (рис. 2). Объяснимая модель прогнозирования искусственного интеллекта используется для выявления интерпретируемых и действенных выводов из существующих биомедицинских знаний, тем самым повышая прозрачность и полезность прогностических моделей. Завершенный рабочий процесс оптимизирует изучение графов знаний и прогнозирования моделей с помощью LLM с поддержкой RAG, обеспечивая интуитивно понятное и информированное взаимодействие между исследователями, клиницистами и клиническими специалистами.

В этом разделе заложена основа протокола, а шаги по его реализации описаны в следующем разделе. Далее демонстрируется трансляционный клинический пример использования для демонстрации этого подхода, применяемого для оценки лекарственных препаратов на предмет молекулярных взаимодействий, а также терапевтических стратегий для сердечно-сосудистой медицины. Наконец, обсуждаются последствия и обсуждение этого протокола.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Этот протокол был разработан на Python 3.10 и реализован в виде контейнера Docker в Windows. Предоставляемые команды основаны на среде Unix в контейнере Docker. Программное обеспечение доступно по адресу https://github.com/pinglab-utils/RUGGED. В таблице 1 представлена оценка вычислительного времени для всех этапов протокола.

1. Установка программного обеспечения

  1. Установите необходимое программное обеспечение, следуя инструкциям в Таблице материалов.
    ПРИМЕЧАНИЕ: Для этого протокола требуется контроль версий, контейнеризация, графовая база данных и службы больших языковых моделей (LLM). Контроль версий и контейнеризация не являются обязательными, но могут упростить процесс настройки; графовая база данных и LLM-сервисы могут быть заменены аналогичными инструментами, если пользователь технически подкован.
    1. Настройте межконтейнерную сеть. Настройте подключение контейнеров Docker к другим службам на устройстве (например, к другим контейнерам Docker). Введите в терминал следующую команду: docker network create rugged_network
  2. Настройте службы больших языковых моделей (LLM). Выберите подходящий LLM-сервис для конкретного случая использования, среди коммерческих LLM-сервисов или сервисов из локальной модели, работающих на устройстве пользователя. Убедитесь, что указана как минимум одна услуга LLM, хотя агентов можно смешивать и подбирать для использования разных моделей.
    1. Запустите услугу Local LLM. При использовании Ollama с использованием графического интерфейса пользователя (GUI) запустите исполняемый файл с графическим интерфейсом пользователя (например, ollama.exe). Если вы используете Docker, выполните: 'docker run -name ollama --net rugged_network d -v ollama:/root/.ollama -p 11434:11434 ollama/ollama'. Если вы используете Docker с ускорением графического процессора, убедитесь, что драйвер графического процессора установлен, и выполните: 'docker run -name ollama --net rugged_network -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 ollama/ollama'.
    2. Инициализируйте локальную модель LLM. Определите, какую модель следует использовать среди поддерживаемых моделей (например, рекомендуемые: llama3, mistral, mixtral. Если вы используете Docker, введите в командной строке «docker exec run ollama run »; Если вы используете графический интерфейс Ollama, введите 'ollama run ', заменив на название модели для каждого.
  3. Запустите службу Graph Database. Выберите службу графовой базы данных среди контейнера Docker, настольного приложения или веб-онлайн-службы. Следуйте инструкциям по установке, приведенным в Дополнительных материалах, чтобы завершить настройку.
  4. Настройте среду RUGGED. Проверьте загруженные образы Docker, введя образы Docker. Убедитесь, что все образы Docker из предыдущего шага перечислены. Выполните следующие команды в терминале, чтобы загрузить образ и код RUGGED Docker:
    Docker pull PingLabutils/Rugged:Последние
    ПРИМЕЧАНИЕ: git clone https://github.com/pinglab-utils/RUGGED
    1. Настройте услугу Commercial LLM. Если вы пользуетесь коммерческими услугами LLM, убедитесь, что на счету и связанном с ним ключе API достаточно средств. Измените файлы конфигурации RUGGED, отредактировав файл конфигурации в разделе «RUGGED/config/openai_key.txt» и добавив ключ API в файл.
    2. Настройка коммерческих агентов. Определите, какие агенты LLM в системе RUGGED будут использовать эту услугу. Измените файл конфигурации в папке «RUGGED/config/llm_agents.json» и обновите поля агента, указав версию модели. Рекомендуемые модели: gpt-3.5-turbo, gpt-4o.
    3. Настройте локальную службу LLM. Если вы используете конечную точку службы, отличную от конечной точки по умолчанию для Ollama в разделе "http://localhost:11434", измените и обновите поле "OLLAMA_URI" в файлах конфигурации в разделе "RUGGED/config/ollama_config.json".
    4. Настройте локальных агентов LLM. Определите, какие агенты LLM в системе RUGGED будут использовать эту услугу. Измените файл конфигурации в 'RUGGED/config/llm_agents.json' и обновите поля агента, указав 'ollama' в качестве выбранной модели.
    5. Настройте конечную точку базы данных графов. Если пароль и имя пользователя по умолчанию для Neo4j изменены, отредактируйте файл конфигурации 'RUGGED/config/neo4j_config.json', обновив поля 'uri', 'username' и 'password'.
  5. Запустите службу RUGGED, выполнив команду:
    docker run --name rugged -it --net rugged_network --gpus=all -v \RUGGED\:/data ping-lab-
    utils:RUGGED /bin/bash
    ПРИМЕЧАНИЕ: Чтобы убедиться, что службы работают должным образом, перейдите в каталог RUGGED и выполните шаги 1.4.1. через шаг 1.4.4. в этом окне терминала.
    1. Проверьте работоспособность сервиса LLM. Перейдите в тестовую папку в каталоге RUGGED и выполните следующие команды, чтобы убедиться, что сервисы OpenAI и/или Ollama работают:
      Python test_openai.py
      Python test_ollama.py
    2. Проверьте функциональность службы распознавания именованных сущностей. Выполните команду 'test_ner.py', чтобы убедиться, что код для распознавания именованных сущностей пользовательских запросов работает правильно.
    3. Проверьте работоспособность сервиса Neo4j. Выполните тестовые скрипты, чтобы убедиться, что служба Neo4j функционирует должным образом, введя «python test_neo4j.py»
    4. (Дополнительный) Проверьте HTTP-доступ к графовой базе данных. Откройте веб-браузер и перейдите в пользовательский интерфейс Neo4j.
      ПРИМЕЧАНИЕ: Для Neo4j в Docker или Desktop URL по умолчанию — «http://localhost:7474». Для Neo4j AuraDB используйте ссылку, предоставленную во время настройки.
  6. (Дополнительный) Устранение неполадок. Убедитесь, что службы, поддерживающие RUGGED, проверены во время настройки программного обеспечения, чтобы предвидеть проблемы. Устраните все неудачные тесты из шага 1.4. Если они существуют, следуйте сообщениям об ошибках, о которых сообщают тестовые скрипты, описывающие проблемы.
    1. Проверьте контейнеры Docker. Убедитесь, что все контейнеры Docker запущены, используя docker ps в терминале, включая контейнер Docker RUGGED, контейнер Neo4j Docker (необязательно) и контейнер Ollama Docker (необязательно).
    2. Проверьте сетевые порты. Для служб Docker убедитесь, что открыты правильные порты, и проверьте журналы с помощью «docker logs neo4j» или «docker logs ollama».
      ПРИМЕЧАНИЕ: По умолчанию Neo4j использует порты 7474 для http и 7687 для своего интерфейса bolt; Ollama использует порт 11434.
    3. Проверьте служебные приложения. Для приложений, установленных непосредственно на устройстве (например, Ollama и Neo4j Desktop), откройте приложения, чтобы подтвердить, что они работают.
    4. Верифицируйте веб-сервисы. Для Neo4j AuraDB войдите на веб-сайт и убедитесь, что сервис работает.
    5. Проверьте правила брандмауэра. Измените правила брандмауэра устройства, чтобы убедиться, что брандмауэр не блокирует внешние службы.
    6. Перезагрузите устройство. Если проблемы не устранены, перезагрузите устройство и повторите попытку, начиная с шага 1.5.1.
    7. Откройте задачу. Если проблема не устранена, откройте проблему на сайте RUGGED GitHub (https://github.com/pinglab-utils/RUGGED).

2. Доступ к биомедицинским знаниям и информации об извлечении

ПРИМЕЧАНИЕ: Эти шаги описывают два конвейера извлечения знаний в качестве базовой информации, составляющей систему дополненной генерации поиска (RAG) RUGGED: (1) конвейер биомедицинского анализа текста CaseOLAP LIFT5 и (2) рабочий процесс построения графа знанийKnow2BIO 9. Чтобы использовать RUGGED с пользовательскими данными, перейдите к шагу 4.

  1. Экстракт биомедицинской литературы. Определяйте релевантные документы и высокоуровневые отношения белка и заболевания с помощью CaseOLAP LIFT, вычислительного протокола, предназначенного для исследования субклеточных белков и их ассоциаций с заболеванием с помощью интеллектуального анализа текста биомедицинской литературы. Выполните этот шаг, чтобы подготовить необходимую информацию для информирования рабочего процесса RAG с помощью целевых аналитических выводов из этих отчетов.
    1. Выполните анализ CaseOLAP LIFT для интеллектуального анализа текста. Ознакомьтесь с протоколом CaseOLAP LIFT JoVE (шаги 4-5 для этого анализа не требуются).
    2. Перемещение обработанных текстовых документов. Убедитесь, что проанализированные биомедицинские документы (pubmed.json) и их полный текст (pmid2full_text_sections.json) из шага 3 находятся в папке данных CaseOLAP LIFT . Переместите эти файлы в папку данных RUGGED с помощью следующих команд:
      mv /caseolap_lift/caseolap_lift_shared_folder/data/pubmed.json /RUGGED/data/text_corpus
      mv /caseolap_lift/caseolap_lift_shared_folder/data/ pmid2full_text_sections.json /RUGGED/data/text_corpus
    3. Перемещение результатов интеллектуального анализа текста. Убедитесь, что файл графа знаний (merged_edge_list.tsv) с ассоциациями белок-заболевание был сгенерирован в папке result/kg. Проверьте количество ассоциаций как ожидалось, в зависимости от выбранных настроек из шагов 1-3 (см. Таблицу 2 для примера). Переместите этот файл в папку данных RUGGED:
      mv /caseolap_lift/caseolap_lift_shared_folder/result/graph_data/ merged_edge_list.tsv /RUGGED/data/knowledge_graph
  2. Извлекайте биомедицинские знания. Соберите граф биомедицинских знаний с помощью программного обеспечения Know2BIO , которое интегрирует данные из 30 баз биомедицинских знаний. Выполните этот шаг, чтобы убедиться, что информация для этих биомедицинских отношений и мультимодальных данных обработана для поддержки нисходящего рабочего процесса RAG.
    1. Клонирование репозитория Know2BIO. Клонируйте репозиторий, введя текст в командной строке с помощью приведенной ниже команды. Перейдите в репозиторий Know2BIO.
      git clone https://github.com/Yijia-Xiao/Know2BIO.git.
    2. Подготовка данных и лицензий. Перейдите в папку dataset и следуйте инструкциям в файле 'README.md'. Завершите создание необходимых учетных записей пользователей для доступа к различным онлайн-ресурсам (например, тезаурусу UMLS, Drug Bank).
    3. Загрузите ресурсы базы знаний. Выполните скрипт Python create_edge_files.py и отслеживайте ход выполнения конвейера извлечения графа знаний. Убедитесь, что файл .csv в папке «Know2BIO/dataset/output», представляющий биомедицинские отношения, был создан.
    4. Построение графа знаний. Выполните скрипт 'python prepare_kgs.py' для интеграции информации, извлеченной на предыдущем шаге, чтобы автоматически объединить извлеченные связи в единый граф знаний, форматируя граф по источнику данных и предметной области.
    5. Проверьте вывод. Убедитесь, что готовые файлы находятся в файле 'whole_kg.txt' в каталоге 'Know2BIO/dataset/know2bio_dataset'. Убедитесь, что количество ребер в файле соответствует ожидаемому; см. таблицу 3, в результате чего было получено более 6 миллионов ребер. Перейдите к следующему шагу, так как остальные шаги в файле Know2BIO README не являются обязательными для этого анализа.
      ПРИМЕЧАНИЕ: Взаимосвязи из Know2BIO в таблице 3 были получены из 31 источника, включая ATC (Всемирная организация здравоохранения), Bgee45, CTD46, ClinGen47, ClinVar48, DOID49, DisGeNET50, DrugBank51, GRNdb52, Gene Ontology53, HGNC54, Hetionet3, Inxight Drugs55, KEGG56, MeSH57, Mondo58, MyChem.info59, MyDisease.info59, MyGene.info59, OMIM60, PathFX61, PharmGKB62, PubMed, Reactome63, SIDER64, SMPDB65, STRING66, TTD67, UMLS68, Uberon69 и UniProt70.
    6. Перемещение результатов графа знаний. Переместите файл в '/data/knowledge_graph/' каталога RUGGED.
      mv /Know2BIO/dataset/know2bio/whole_kg.txt /RUGGED/data/knowledge_graph
  3. Постройте объединенный граф знаний. Интегрируйте граф из предыдущего шага с высокоуровневыми связями белка и заболевания из интеллектуального анализа текста из шага 2.1 в единый унифицированный граф знаний.
    1. Проверьте результаты в каталоге RUGGED. Убедитесь, что файл результатов построения графа знаний (whole_kg.txt) и результаты связи интеллектуального анализа текста (merged_edge_list.tsv) находятся в каталоге knowledge_graph в папке данных.
    2. Интегрируйте результаты. Выполните скрипт 'combine_kg_results.py' для объединения извлеченных связей и сущностей из анализа интеллектуального анализа текста и построения графа знаний в единый целостный граф знаний. Следуйте приведенному ниже примеру команды:
      python rugged/knowledge_graph/combine_kg_results.py ./data/knowledge_graph/merged_edge_list.tsv ./data/knowledge_graph/whole_kg.txt --output_dir ./data/rugged_knowledge_graph
  4. Фильтруйте граф знаний. (Дополнительный) Выборка подмножества графа знаний, которое будет использоваться для прогнозного анализа. На этом этапе сохраняются только тесно связанные отношения и сокращаются вычислительные ресурсы, необходимые для выполнения прогнозов глубокого обучения.
    1. Определите релевантные узлы. Определите биомедицинские объекты, представляющие интерес для прогностического анализа на шаге 3, просмотрев граф знаний и точно определив соответствующие узлы.
      ПРИМЕЧАНИЕ: Этот протокол фокусируется на узлах заболевания аритмогенной кардиомиопатии (АКМП) и дилатационной кардиомиопатии (ДКМП), как MeSH_Disease: D019571 и MeSH_Disease: D002311 соответственно. Целевые узлы должны быть адаптированы к предполагаемому сценарию использования.
    2. Пример из графа знаний. Используйте скрипт 'filter.py' для извлечения подграфа графа знаний, достижимого в пределах k-hop, из выбранных интересующих узлов. Следуйте приведенному ниже примеру команды, которая фильтрует график, достижимый в пределах 2 узлов от выбранных узлов заболевания:
      python ./rugged/knowledge_graph/kg_filter.py --k 2 --disease "MeSH_Disease:D019571,MeSH_Disease:D002311" --input_file ./data/rugged_knowledge_graph/rugged_knowledge_graph_edges.csv —output_dir ./data/rugged_knowledge_graph/filtered_kg/.
      ПРИМЕЧАНИЕ: Увеличение значения k-hop (--k) расширяет область данных в графе для прогнозного анализа, но также требует больших вычислительных ресурсов.

3. Объяснимый прогнозный анализ

ПРИМЕЧАНИЕ: Выполните GNNExplainer44 на модели сверточной сети графа для прогнозирования потенциальных ребер (отношений) в графе знаний и получения информации о ранее неизвестных ассоциациях.

  1. Убедитесь, что контейнер RUGGED Docker запущен. Если предыдущее окно терминала было закрыто, подключитесь к контейнеру Docker с помощью команды 'docker exec --it rugged /bin/bash'. После подключения к контейнеру Docker перейдите в каталог RUGGED.
  2. Определите ребра для прогнозирования. Укажите ребра в виде пар узлов в файле .txt (например, edges_to_predict.txt). Ребра, уже существующие в графе знаний, будут отфильтрованы из прогнозов.
  3. Запустите скрипт прогнозного анализа . Укажите ребра для прогнозирования и входной граф знаний в качестве аргументов командной строки для прогноза. Ключевые аргументы: -p (путь к файлу ребер), -i (входной граф знаний), -o (выходной директор), -n (верхние прогнозы, например, 5), -k (верхние ребра для визуализации, например, 10). Пример команды:
    python rugged/predictive_analysis/generate_explainable_prediction.py -o output -n 5 -k 10 -p ./output/edges_to_predict.txt -i ./data/rugged_knowledge_graph/filtered_kg/filtered_k2_edges.csv
  4. Оценка производительности модели. Изучите выходные данные терминала или файл output.log, созданный на предыдущем шаге, чтобы оценить производительность модели на основе разделения отфильтрованного графа знаний на обучающий, проверочный и тестовый наборы с соотношением 85:5:10. Скорректируйте аргументы модели, если производительность не соответствует ожидаемой, используя в качестве примера таблицу 4 .
  5. Убедитесь, что результаты находятся в папке вывода. Изучите результаты модели в 'prediction_results.csv' и изучите первые n прогнозов в выходной папке. Просмотрите первые n прогнозов в папке вывода. Для каждого прогноза визуализация графика иллюстрирует наиболее релевантные ребра, влияющие на каждый прогноз, и их относительную важность.
  6. Перемещайте результаты предиктивного анализа. После того как результаты предиктивного анализа будут удовлетворены, переместите их в папку data/predictions/' каталога RUGGED.

4. Генерация гипотез

  1. Подключитесь к контейнеру Docker RUGGED.
    1. Убедитесь, что контейнер RUGGED Docker запущен. Если предыдущее окно терминала было закрыто, подключитесь к контейнеру Docker.
    2. Перейдите в каталог RUGGED. После подключения введите cd /workspace/RUGGED для перехода к каталогу. Выполните оставшиеся шаги в этом окне командной строки.
    3. Убедитесь, что вспомогательные службы работают. Если вы используете Ollama и Neo4j в Docker, убедитесь, что контейнеры работают, введя «docker ps». Повторите шаг 1.7, чтобы убедиться, что службы работают правильно, и шаг 1.4, чтобы устранить проблемы, если они существуют.
  2. Подготовка данных RAG. Подготовьте граф знаний и текстовый корпус для извлечения.
    ПРИМЕЧАНИЕ: Эти данные могут быть заменены данными, определенными пользователем, путем помещения данных в каталоги 'data/knowledge_graph/' и 'data/text_corpus/' соответственно. Эти данные должны соответствовать формату из репозитория GitHub (https://github.com/pinglab-utils/RUGGED/tree/main/data).
    1. Проверьте ресурсы. Убедитесь, что текстовый корпус находится в каталоге data/text_corpus/, граф знаний с файлом прогнозов интеллектуального анализа текста — в каталоге data/knowledge_graph/, а результаты прогнозирования — в каталоге data/predictions/ (из шагов 2.1.2., 2.3.2 и 3.5. соответственно).
    2. Заполните базу данных графов. Выполните команду 'python ./neo4j/prepare_neo4j.py' для создания необходимых узлов, ребер и функций узлов.
    3. Индексируйте текстовый корпус. Выполните команду 'python ./text/prepare_corpus.py' для индексации текстового корпуса и включения RUGGED для извлечения соответствующих текстовых документов на основе запросов пользователей, разделив документы на разделы по 500 токенов для создания векторной базы данных с использованием BART71.
    4. Необязательно) Протестируйте извлечение графовой базы данных. Отправьте тестовый запрос в базу данных Neo4j, чтобы убедиться, что она заполнена правильно и может вернуть ожидаемые результаты. Убедитесь, что выходные данные соответствуют ожидаемым узлам и отношениям в базе данных. Пример команды:
      python ./test/test_neo4j_retrieval.py --query "MATCH (n) RETURN n LIMIT 5"
    5. (Дополнительный) Тестовое извлечение корпуса RAG. Отправьте тестовый запрос в текстовый корпус RAG, чтобы убедиться, что система извлечения текста работает. Убедитесь, что полученные документы имеют отношение к запросу и что внедренные файлы функционируют должным образом. Пример команды: python ./test/test_literature_retrieval.py --query "Какие документы связаны с использованием бета-блокаторов для лечения сердечно-сосудистых заболеваний?"
  3. Взаимодействуйте с RUGGED. Запустите RUGGED в интерфейсе командной строки для взаимодействия с системой. Выполните команду 'python rugged.py'. Запрашивайте у системы необходимую информацию с помощью специальных команд для взаимодействия с графом знаний и текстовым корпусом.
    1. Запросите граф знаний. Извлекайте конкретную информацию из графа знаний, формулируя вопрос на естественном языке, начиная с ключевого слова «запрос». Например:
      вопрос «Какие в настоящее время назначаемые препараты классифицируются как бета-блокаторы, антиаритмические препараты и антифибротические препараты?»
    2. Ознакомьтесь с прогнозами. Изучите анализ прогнозирования связей из шага 3 и попросите выполнить поиск конкретной связи, начав с ключевого слова «прогнозировать». Например:
      предсказывать: «Какие из этих препаратов потенциально могут быть использованы для лечения АКМП и/или ДКМП, которые в настоящее время не известны?»
    3. Изучите поиск литературы. Изучите документы, относящиеся к конкретной биомедицинской теме, начиная с шага 2. Сформулируйте вопрос на естественном языке, начав с ключевого слова «поиск». Например:
      поиск: «Какие литературные данные подтверждают утверждение о том, что эти предсказанные препараты могут быть использованы для лечения АКМП и/или ДКМП?»
    4. Выполняйте итерации и уточняйте запросы. Отвечайте прямо в командной строке, чтобы повторять и уточнять запросы с помощью интерфейса RUGGED, похожего на чат. Обратитесь к предыдущим беседам между пользователем и системой, чтобы пересмотреть и уточнить вопросы и запросы.
    5. Повторите выполнение команд шифра в Neo4j. (Дополнительный) Уточните результаты запроса графа знаний, настроив предоставленную команду Cypher, используемую для извлечения информации. Повторите или измените эту команду, посетив веб-интерфейс Neo4j из Шага 1.4.4 (например, в http://localhost:7474). Вставляйте и изменяйте команды Cypher по мере необходимости, чтобы уточнить запросы и получить более конкретные сведения.
    6. Подведите итоги разговора. Просмотрите полученную информацию и подведите итоги беседы с RUGGED. Введите ключевое слово summarize , чтобы вывести сводку взаимодействия в текстовый файл для последующего анализа. Полнотекстовый ответ будет отображен в терминале.
    7. Проведите анализ с участием человека, чтобы повысить точность выходных данных, проверив и изменив ответы системы для удобства чтения и краткости, прежде чем завершить работу над сводкой.
    8. Просматривайте журналы чата. Ознакомьтесь с полным текстом взаимодействия в папке журнала в RUGGED. Сохраняйте эти промежуточные команды и диалоги между агентами LLM в RUGGED для устранения неполадок и воспроизводимости.
  4. Выключение и перезапуск RUGGED.
    1. Получите идентификаторы контейнеров Docker. Используйте команду docker ps, чтобы получить список всех запущенных контейнеров и идентификаторы контейнеров для RUGGED, Neo4j и Ollama. Для всех следующих команд замените , и фактическими идентификаторами контейнеров.
    2. Остановите контейнеры Docker. Завершите работу RUGGED и связанные с ним контейнеры Docker, используя их идентификаторы контейнеров.
      Остановка Docker
      Остановка Docker
      Остановка Docker
      ПРИМЕЧАНИЕ: Рекомендуется остановить эти контейнеры перед выключением устройства, чтобы предотвратить потенциальную потерю данных и обеспечить правильное завершение всех процессов.
    3. Перезапустите контейнеры Docker. Чтобы перезапустить систему RUGGED, используйте идентификаторы контейнеров для запуска необходимых контейнеров Docker.
      Docker start
      Docker start
      Docker start
    4. Повторно подключитесь к сети Docker. При необходимости используйте эти команды для повторного подключения контейнеров к сети.
      Сетевое подключение Docker rugged_network
      Сетевое подключение Docker rugged_network
      Сетевое подключение Docker rugged_network
    5. Проверьте работоспособность сервиса. После перезагрузки повторите шаги 1.4-1.5, чтобы убедиться, что программное обеспечение работает должным образом.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Эти репрезентативные результаты были получены в результате следования процедуре, описанной в настоящем протоколе. Анализ ассоциаций был проведен в соответствии с протоколом CaseOLAP LIFT5 с параметрами по умолчанию, изучив восемь широких категорий сердечно-сосудистых заболеваний72 и их связь с митохондриальными белками (GO:0005739). В общей сложности по состоянию на май 2024 года было определено 635 696 сообщений об этих заболеваниях; Среди них было выявлено 4655 ассоциаций белка и заболевания с высокой степенью достоверности для последующего анализа. Граф биомедицинских знаний был построен с использованием программного кода от Know2BIO с настройками по умолчанию в мае 2024 года9. Результирующий граф знаний состоит из 219 450 узлов, 6 323 257 ребер, а также признаков узлов для 189 493 узлов с описаниями узлов, последовательностями белков/генов, химической структурой и т. д., где это возможно. Оценка вычислительного времени для всех этапов протокола представлена в таблице 1.

Система RUGGED была инициализирована путем построения векторных баз данных как для узлов графа знаний, так и для признаков, а также публикаций, относящихся к CVD. Все узлы графа знаний, ребра и особенности узлов были обработаны с размером блока 20 токенов с помощью модели встраивания BART71 для подготовки к векторному поиску RAG. Аналогичным образом, оригинальные вклады и обзорные статьи обрабатывались с использованием блока размером 500 токенов и модели встраивания BART для подготовки к векторному поиску RAG. Для поиска литературы полнотекстовые публикации размером более 500 токенов были иерархически суммированы на основе отдельных разделов публикации с помощью модели встраивания BART. Модель GPT-4o использовалась для остальных LLM-агентов в системе.

Эти репрезентативные результаты демонстрируют пример использования для исследования потенциальных лекарственных препаратов для лечения аритмогенной кардиомиопатии (АКМП) и дилатационной кардиомиопатии (ДКМП), обозначенных как MeSH_Disease: D019571 и MeSH_Disease: D002311 соответственно. Серия запросов представлена на рисунке 3, примеры ответов модели показаны на рисунке 4, а полный ответ представлен в дополнительном файле 1, раздел А. Направление исследования было адаптировано к проверенным исследователями ответам, и последующие запросы были составлены на основе результатов предыдущих ответов. Анализ выявил 11 кандидатов в препараты, классифицируемые как бета-блокаторы и антиаритмики. Новые возможности терапевтического лечения оценивались с помощью модели прогнозирования связи сверточной нейронной сети графа на подмножестве полного графа знаний, включая узлы в пределах 1 прыжка от исследуемых узлов заболевания и лекарства и их взаимосвязи, с метриками оценки, представленными в таблице 4. Верхние 10 релевантных ребер для каждого прогноза модели были дополнительно изучены с помощью модуля объяснимости графа, GNNExplainer44, чтобы определить верхние узлы и ребра, вносящие вклад в каждый прогноз, соответственно. Общая стоимость использования коммерческого LLM для всех этапов протокола RUGGED для данного случая использования оценивается в $1.50 на момент написания статьи.

figure-results-1
Рисунок 1: Извлечение данных в рамках рабочего процесса Graph-Guided Explainable Disease Distinction (RUGGED). RUGGED состоит из четырех основных компонентов: (1) сбор и обработка данных из этически полученных и профессионально управляемых ресурсов (например, PubMed и курируемых биомедицинских баз знаний), (2) интеграция результатов рецензируемых исследований в единый граф знаний, (3) структурирование текстовых и графовых данных в рамках баз данных, (4) моделирование и прогнозирование объяснимых отношений между биомедицинскими объектами в рамках графа знаний, и (5) извлечение и синтез знаний с помощью рабочего процесса дополненной генерации (RAG) (рис. 2) для проверки сложных молекулярных отношений и изучения прогнозирования заболеваний на основе искусственного интеллекта. Для повышения точности выводимых данных пользователь может выполнять этап проверки с участием человека в процессе. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.

figure-results-2
Рисунок 2: Архитектура извлечения и рабочий процесс по снижению смещения. Фреймворк Retrieval Augmented Generation (RAG) использует несколько агентов LLM, каждый из которых выполняет определенные задачи для поддержки доступа к релевантной информации на основе запроса пользователя. Эта система предоставляет документированные доказательства работы ориентированного на пользователя Reasoning Agent на основе GPT, облегчая взаимодействие пользователя с агентом и синтез знаний. (1) Поиск биомедицинских текстов: Рецензируемые оригинальные статьи и обзорные статьи фильтруются на основе их актуальности для понимания ассоциаций заболеваний. Векторная база данных создается для проверенных автором и редактором текстовых данных, взвешенных на основе соответствующего раздела публикации, соответственно: 70% Аннотации, 10% Результатов, 10% Метаданных и 10% для всех остальных подразделов. Поиск по ключевым словам и поиск по сходству с текстом, встраивание пользовательского запроса вместе идентифицируют релевантные документы. Резюме по каждому документу генерируются с помощью резюмера на основе BERT, а агент оценки текста на основе GPT уточняет поиск для проверки релевантности запроса и документа. (2) Извлечение графа знаний: Модуль распознавания именованных сущностей на основе BERT и извлечения отношений на основе GPT связывает запрос пользователя с соответствующими сущностями в графе знаний. Поиск сходства в векторной базе данных выявляет соответствующие узлы и ребра. Данные извлекаются из базы данных Neo4j с помощью запросов Cypher, генерируемых агентом Cypher Query Agent на основе GPT и уточняемых агентом проверки запросов. (3) Отдельные ответы из конвейеров поиска биомедицинского текста или графа знаний представляются Агенту Рассуждения, который синтезирует краткий ответ с минимальным смещением на запрос пользователя. Эта система направлена на обеспечение точности и беспристрастности при представлении фактической информации. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.

figure-results-3
Рисунок 3: Пример использования для синтеза знаний и исследования гипотез с помощьюкаскада запросов. На этом рисунке показан выделенный сценарий использования, сосредоточенный на цепочке связанных вопросов и концепций, которые исследователь и/или медицинский работник могут задать системе RUGGED. Запросы от пользователя представляются системе в числовом порядке, со стрелками, представляющими логические и предметно-специфические рассуждения по каждому вопросу. Система извлекает из неявной и релевантной информации (источник показан синим цветом), отвечая на запрос. Примеры реакций системы представлены на рисунке 4. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.

figure-results-4
Рисунок 4: Пример использования сердечно-сосудистой патологии: выяснение патогенеза ССЗ. Отображаются пары запрос-ответ между пользователем и системой RUGGED. В верхней левой части вопросы 1-6 извлекают информацию путем извлечения информации из базы данных графа знаний для формулирования ответов, основанных на фактических данных. В вопросе 7 используется объяснимое предсказание связи графа для определения наиболее результативных терапевтических средств. Запрос предлагает прогностический анализ, который выполняется и обрабатывается системой автоматически, а ключевые выводы кратко обобщаются. В вопросе 8 оцениваются литературные данные из определенного корпуса текстовых данных, которые извлекаются в качестве релевантных доказательств для проверки, подтверждения и подтверждения прогнозируемого результата. Реакция системы была проверена в процессе проверки человеком и изменена для удобства чтения и краткости. Полная расшифровка этих выводов подробно изложена в Дополнительном файле 1. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.

СтремянкаОписаниеВремя
Доступ к биомедицинским знаниям30% всего
Подготовка корпуса биомедицинской литературыПодключайтесь к PubMed и PubMed Central, загружайте и анализируйте данные публикаций для последующих задач.20%
Подготовка данных базы знанийПодключайтесь к базам знаний по биомедицине, загружайте и анализируйте необходимую информацию для последующих задач.5%
Извлечение информации30% всего
CaseOLAP LIFT Анализ интеллектуального анализа текстаВыявление высокого уровня взаимосвязи между заболеванием и белком в биомедицинском текстовом корпусе.25%
Построение графа знанийОбъединяйте и интегрируйте разрозненную информацию из биомедицинских баз знаний в единый граф знаний.5%
Прогнозный анализ10% всего
Обучение нейронной сети графаОбучите модель на данных графа биомедицинских знаний, чтобы изучить скрытые закономерности в графе.5%
Анализ ранжирования релевантностиПримените модуль объяснимости, чтобы выделить наиболее релевантные узлы и края, имеющие отношение к изучению заболевания.2.5%
Прогнозирование ссылокИспользуйте модуль объяснимости для определения ключевых узлов и ребер, способствующих новым прогнозируемым ребрам.2.5%
Генерация и/или проверка гипотез30% всего
Настройка базы данных для извлечения дополненной генерацииИнициализируйте базу данных графа для запроса графа знаний и векторную базу данных для извлечения текста.25%
Исследование гипотезОбеспечьте взаимодействие пользователя с RUGGED для доступа и тщательного изучения соответствующей информации для изучения гипотез.5%

Таблица 1: Этапы рабочего процесса и ограничения скорости. В этой таблице приведены приблизительные оценки вычислительного времени, необходимого для каждого этапа рабочего процесса. Шаги по ограничению скорости включают доступ, извлечение и индексацию биомедицинских знаний, необходимых для генерации. Исследование гипотезы может повторяться непрерывно без необходимости повторного выполнения шагов, ограничивающих скорость.

Категория заболеванияНомера в дереве MeSH# ПМИДы# Оригинальный вклад# Обзорные статьи
Кардиомиопатии (КМ)С14.280.238132,531102,33719,942
С14.280.434
Сердечные аритмии (ОРБ)С14.280.067125,28692,37413,854
С23.550.073
Врожденные пороки сердца (ВПС)С14.280.40082,00654,0236,379
Заболевания сердечных клапанов (ВД)С14.280.48472,01650,1195,743
Ишемия миокарда (ИБС)С14.280.647256,986210,04230,223
Заболевание проводящей системы сердца (БСЗ)С14.280.12353,05035,3994,363
Обструкция желудочкового оттока (ВОО)С14.280.95522,24415,5041,686
Другие болезни сердца (ОТГ)C14.280.195 C14.280.282 C14.280.383 C14.280.470 C14.280.945 C14.280.459 C14.280.720114,08577,30211,799
Итог635,696478,40469,690

Таблица 2: Статистика биомедицинской литературы. В этой таблице подробно описаны категории исследуемых заболеваний с соответствующими номерами дерева MeSH и количеством документов PubMed, извлеченных до мая 2024 года, которые использовались в качестве корпуса для интеллектуального анализа текста. Подмножество этих публикаций, состоящее из оригинальных научных статей и обзорных статей, индексируется в векторной базе данных для извлечения с помощью RUGGED во время генерации гипотез.

КатегорияКоличество узловКоличество реберИсточник(и) данных
Анатомия5,049122,533Bgee, PubMed, MeSH, Uberon, 
Биологический процесс27,047108,106Онтология генов
Клеточный компонент4,05752,238Онтология генов
Соединение27,2783,292,028DrugBank, MeSH, CTD, UMLS, KEGG, TTD, SIDER, Inxight Drugs, Hetionet, PathFX, MyChem.info
Болезнь21,938311,773PubMed, MeSH, DisGeNET, SIDER, ClinVar, ClinGen, PharmGKB, MyDisease.info, PathFX, UMLS, OMIM, Mondo, DOID, KEGG
Класс лекарственных средств5,7218,283УВД
Ген29,810943,419HGNC, GRNdb, KEGG, ClinVar, ClinGen,
Молекулярная функция11,15147,086SMPDB, DisGENET, PharmGKB, MyGene.info
Дорожка52,012234,944Онтология генов
Белок20,7401,074,809Reactome, KEGG, SMPDB
Реакция14,647128,038UniProt, Reactome, TTD, SMPDB, STRING, HGNC
Промежуточная сумма219,4506,323,257Реактом
Ассоциации интеллектуального анализа текста84,670
Итог219,4586,327,927

Таблица 3: Статистика графа знаний. В этой таблице подробно описаны 11 широких биомедицинских категорий, составляющих построенный граф знаний Know2BIO, обогащенный дополнительными ребрами, полученными в результате анализа интеллектуального анализа текста и прогнозного анализа. Результирующий граф знаний и прогнозы управляются графовой базой данных Neo4j для извлечения RUGGED во время генерации гипотез.

ТочностьТочностьВспоминатьF1-счетAUROCАУПРК
Ратификация0.71580.66390.87430.75470.84370.8637
Тест0.7030.63670.94550.7610.89610.9094

Таблица 4: Объяснимая оценка модели ИИ. В этой таблице представлены метрики оценки для прогнозирования связи графа знаний с помощью двухслойной сверточной нейронной сети графа. Метрики оценивались путем разбиения ребер графа на 85 % обучающих, 5 % проверочных и 10 % тестовых наборов данных. Точность указывает на долю правильно классифицированных прогнозов. Precision сообщает о доле правильных положительных прогнозов среди всех положительных прогнозов. Функция полноты измеряет долю правильных положительных прогнозов среди фактических положительных ребер. Оценка F1 — это гармоническое среднее значение точности и запоминаемости, уравновешивающее эти два показателя. AUROC оценивает способность модели различать положительные и отрицательные прогнозы. AUPRC количественно оценивает компромисс между точностью и полнотой при различных пороговых значениях. Для всех метрик более высокие значения указывают на лучшую производительность модели.

Дополнительный файл 1: В этом файле подробно описан полный ответ модели от RUGGED и сравнение с GPT-4o. В разделе A представлено полное взаимодействие человека и компьютера с RUGGED, расширенный подход на основе цепочки запросов, описанный на рисунке 3 , и предоставленный полный ответ, выходящий за рамки краткого обзора, показанного на рисунке 4. В разделе B оцениваются ответы GPT-4o без извлечения по сравнению с ответами RUGGED, оцениваются такие характеристики, как точность, глубина, оценка достоверности, надежность доказательств и стоимость. Пожалуйста, нажмите здесь, чтобы скачать этот файл.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Протокол RUGGED использует современные языковые модели с актуальной информацией, чтобы дать исследователям возможность динамично исследовать развивающийся биомедицинский ландшафт и открывать новые знания. Это взаимодействие человека и компьютера приводит в движение инновационный процесс, который иллюстрирует эффективность машины (RUGGED), а также опыт и суждение исследователя. Этот протокол предназначен для выполнения в описанной последовательности. Шаг 1 подробно описывает установку программного обеспечения. Шаги 2 и 3 имеют важное значение для подготовки биомедицинской литературы и ресурсов, в то время как шаг 4 индексирует эту информацию для генерирования с помощью поиска и взаимодействия пользователя с системой LLM. Трудоемкие шаги могут выполняться одновременно и/или последовательно. Например, создание графа Neo4j (шаг 4.2.2) может начаться во время анализа прогнозов (шаг 3), а индексация может начаться после построения графа знаний (шаг 2.3) и интеллектуального анализа текста (шаг 2.1). Эти шаги необходимо повторять, чтобы получить окончательный результат этих промежуточных результатов. Несмотря на то, что этот протокол предназначен для поиска биомедицинской информации, с незначительными изменениями он может также обрабатывать другие текстовые и графические данные, такие как внутренние данные, клинические заметки или электронные медицинские карты. Детали форматирования данных находятся на шаге 4.2.

Работа этой платформы зависит от правильной установки и взаимосвязи нескольких технологий, включая языковые модели, графовые базы данных и векторные базы данных (см. Таблицу материалов). Чтобы убедиться в правильности установки и подключения этих сервисов, тестовые скрипты предоставляются в папке test в репозитории GitHub. Внешние услуги могут повлечь за собой расходы, при этом цены могут быть изменены поставщиком. Эти дополнительные службы также имеют локально размещенные альтернативы, требующие только достаточных вычислительных ресурсов. Однако эти альтернативы могут повлиять на производительность и/или удобство модели, что делает их непригодными для некоторых сценариев использования.

В связи с быстрым развитием ландшафта LLM регулярно выпускаются новые знаковые модели и модели для конкретных задач. На момент написания этого отчета были выбраны наиболее подходящие модели для выполнения этой задачи. Пользователи могут выбрать, какой LLM использовать, обновив файл конфигурации соответствующим образом (см. шаги 1.3.2-1.3.4). Выбор моделей зависит от их релевантности конкретному сценарию использования. Например, включение в этот рабочий процесс моделей, ориентированных на обеспечение того, чтобы ответы моделей были справедливыми, цензурированными и свободными от языка ненависти 73,74,75,76,77,78, имеет важное значение по этическим соображениям. Кроме того, быстрое проектирование имеет важное значение для надежного и ответственного поведения в соответствии с LLM 79,80,81,82. Подсказки, созданные для рабочего процесса RUGGED, адаптированы к используемым моделям и представленным сценариям использования. Чтобы точно настроить подсказки для другого варианта использования, пользователи могут редактировать подсказки в рабочем процессе RUGGED в папке «configuration» в файле «prompts.json».

В то время как системы RAG направлены на уменьшение галлюцинаций у LLM путем обоснования реакций на доказательствах, эти модели все же могут приводить к неточной информации или в целом верным, неспецифическим реакциям. Сравнительное сравнение RUGGED с GPT-4o представлено в дополнительном файле 1, разделе B. Галлюцинации модели часто возникают, когда полученная информация выходит за рамки контекстного окна модели, аналогично деменции с потерей памяти и неспособностью найти содержимое данных, что приводит к неточным ответам 83,84,85. Выбор подходящей модели LLM помогает смягчить эту проблему. Например, GPT-4o имеет лимит контекста в 128 тыс. токенов, что значительно больше, чем лимит GPT-3.5 Turbo в 16 тыс. токенов, хотя и обходится пользователю дороже. Кроме того, LLM, тонко настроенные на знание конкретной предметной области, потенциально могут повысить точность и специфичность ответов в биомедицинских приложениях 86,87,88. Несмотря на эти меры, важно перепроверить информацию, прежде чем приступать к дорогостоящим лабораторным экспериментам.

RUGGED использует объяснимый искусственный интеллект в конвейере RAG для тщательного изучения прогнозов соединений, выявляя как надежные, так и ранее не обнаруженные связи. В то время как традиционные системы RAG полагаются на массовое извлечение на основе сходства, этот подход связывает объяснимость с целевым усилением реагирования. В таблице 4 показана высокая производительность модели, демонстрирующая высокую запоминаемость (валидация: 0,975, тест: 0,976) и сбалансированные баллы F1 (валидация: 0,796, тест: 0,797), что указывает на надежность в выявлении истинно положительных результатов, хотя и с более высоким процентом ложноположительных результатов. Надежность модели также подтверждается значениями AUROC (валидация: 0,963, тест: 0,964) и AUPRC (валидация: 0,971, тест: 0,972). Точность (валидация: 0,673, тест: 0,674), однако, может выиграть от настройки пороговых значений, включения детальных функций узлов или улучшенной обработки дисбаланса классов. Эффективность модели в значительной степени зависит от входного графа знаний; Переобучение — это риск при работе с меньшими графами, в то время как большие графы требуют больших вычислительных ресурсов. Тем не менее, любой подход, основанный на RAG, в значительной степени зависит от качества данных, лежащих в основе извлечения. Например, построение графа знаний часто является трудоемким и трудоемким процессом из-за шума, присущего исходному графу. Это требует ручных усилий по очистке шумоподавления и маркировке, а также текущих затрат на обслуживание и обновление баз данных.

Основное применение RUGGED — синтез знаний и исследование гипотез. Исследуя различные скрытые взаимосвязи, такие как механизмы заболевания и медикаментозное лечение, RUGGED эффективно проводит сортировку литературы. Чтобы снизить вычислительную нагрузку, большинство приложений можно разместить на сервере (например, AWS или вычислительном сервере) и настроить на периодическое обновление с учетом актуальной информации. Кроме того, этот рабочий процесс может быть адаптирован для выполнения специализированных приложений, таких как использование в качестве платформы для включения данных пациента в локальные модели для обеспечения безопасности, конфиденциальности и конфиденциальности. Помимо биомедицинских исследований, модульная конструкция RUGGED позволяет ему поддерживать задачи по поиску, выводу и обобщению информации за счет настройки конвейера RAG и быстрых инженерных стратегий, адаптированных к целевой области. Успешная адаптация требует тщательного рассмотрения проблем, специфичных для предметной области, таких как предварительная обработка различных форматов данных и оценка подходящих моделей для конкретных задач и предметной области.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Авторам нечего раскрывать.

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Авторы хотели бы поблагодарить доктора Алекса Буя за его руководство и вдумчивую дискуссию. Кроме того, мы благодарим доктора Дин Вана за его полезные беседы. Эта работа была частично поддержана NIH 1U54HG012517-01 P.P., K.W. и W.W.; NIH T32 HL13945 в A.R.P.; Исследовательская стажировка (NRT) Национального научного фонда 1829071 в A.R.P.; и Фонд TC Laubisch P.P. в Калифорнийском университете в Лос-Анджелесе.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
Аппаратное/программное обеспечение - Графическая карта и программный драйверNvidiahttps://www.nvidia.comВидеокарта и связанное с ней программное обеспечение драйверов настоятельно рекомендуются для значительного сокращения времени выполнения задач, требующих больших вычислительных ресурсов, таких как локальный LLM и прогнозный анализ. Для устройств, оснащенных графическим процессором NVIDIA RTX, загрузите и установите необходимые драйверы и CUDA Toolkit с веб-сайта NVIDIA (https://developer.nvidia.com/cuda-downloads).
Программное обеспечение - Коммерческий сервис больших языковых моделейOpenAIhttps://openai.comRUGGED поддерживает API OpenAI для таких моделей, как GPT-3.5 и GPT-4o. Чтобы настроить с помощью моделей OpenAI, сначала получите ключ API OpenAI. Перейдите на веб-сайт OpenAI (https://openai.com/blog/openai-api), чтобы создать учетную запись, пополнить счет и получить ключ API. Этот ключ API необходим для того, чтобы RUGGED мог использовать модели OpenAI. Определите, какие LLM-агенты в системе RUGGED будут использовать модели OpenAI, из их документации (https://platform.openai.com/docs/models).
ПРИМЕЧАНИЕ: OpenAI API является платной услугой. На момент публикации стоимость GPT-4o составляет $5,00 за 1 миллион входных токенов и $2,50 за 1 миллион выходных токенов (подробнее см. https://openai.com/pricing).
Программное обеспечение - КонтейнеризацияDockerhttps://www.docker.comDocker помогает поддерживать согласованную вычислительную среду выполнения, оптимизируя установку и выполнение программного обеспечения на разных машинах. Чтобы установить Docker, посетите веб-сайт Docker (https://www.docker.com/), нажмите «Начать», загрузите и установите соответствующую версию для ОС. Подтвердите установку, набрав в терминале «docker --version»; Успешная установка сообщает об установленной версии Docker.
Программное обеспечение - Graph DatabaseNeo4jhttps://neo4j.comNeo4j - это программное обеспечение для графовых баз данных, которое эффективно управляет и запрашивает узлы и отношения на основе графов. RUGGED поддерживает Neo4j в нескольких формах: контейнер Docker, Neo4j Desktop или онлайн-сервер Neo4j AuraDB. Выберите вариант, наиболее подходящий для конкретного варианта использования.
Настройка Neo4j в качестве контейнера Docker. Выполните эти команды, чтобы настроить Neo4j в Docker, указав путь к файлу для папки (например, /Users/username/RUGGED) как 'PATH_TO_FOLDER'. Более подробную информацию об устранении неполадок см. на веб-сайте Neo4j Docker (https://hub.docker.com/_/neo4j).
docker pull neo4j
docker run – name neo4j --net rugged_network --publish=7474:7474 --publish=7687:7687 -d -v 'PATH_TO_FOLDER'\neo4j\data:/data neo4j
ПРИМЕЧАНИЕ: Инициализируйте Neo4j в Docker в первый раз, установив имя пользователя и пароль. Запустите neo4j_setup.py скрипт (например, python neo4j_setup.py) или через веб-интерфейс по адресу http://localhost:7474.
Настройка рабочего стола Neo4j. Если вы используете Neo4j Desktop, скачайте и установите с веб-сайта Neo4j (https://neo4j.com/). Создайте новый проект, нажав кнопку "Новый", затем нажмите кнопку "Добавить", чтобы создать новую систему управления базами данных (СУБД). Выберите «Локальная СУБД», установите пароль, нажмите «Создать», затем нажмите «Начать». Зеленый текст "ACTIVE" указывает на то, что он работает.
Настройка Neo4j AuraDB. Посетите веб-сайт Neo4j по адресу (https://neo4j.com/cloud/aura-free/), чтобы создать учетную запись и войти в систему. Выберите «Новый экземпляр», чтобы создать пустой экземпляр и сохранить URI и начальный пароль для доступа к интерфейсу bolt (например, bolt://myurl.neo4j.com). Нажмите кнопку воспроизведения, чтобы запустить экземпляр, который отобразит URI подключения в информационном окне.
ПРИМЕЧАНИЕ: Neo4j AuraDB предлагает бесплатный уровень до 200 000 узлов и 400 000 отношений. Чтобы ознакомиться с более крупными графиками, ознакомьтесь с ценами Neo4j (https://neo4j.com/pricing).
Программное обеспечение - Local Large Language Model ServiceOllamahttps://ollama.comRUGGED поддерживает использование локальных моделей с использованием Ollama (например, Llama3). Чтобы включить эту функцию, сначала установите Ollama на устройство или скачайте контейнер Docker. Чтобы установить Ollama, посетите веб-сайт Ollama (https://ollama.com/download) и следуйте инструкциям по установке. Чтобы установить Ollama на Docker, выполните следующую команду:
docker pull ollama/ollama
ПРИМЕЧАНИЕ: На момент публикации стабильного выпуска для Ollama на ОС Windows не существует.
Программное обеспечение - Управление версиямиGithttps://www.git-scm.comПрограммное обеспечение для контроля версий обеспечивает эффективную установку и обновление программного обеспечения. Чтобы установить Git, посетите веб-сайт Git (https://www.git-scm.com/), нажмите на «Загрузки», загрузите и установите соответствующую версию для ОС. Подтвердите установку, набрав в терминале «git --version»; При успешной установке будет сообщено об установленной версии Git.

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Bioinformatics in translational drug discovery. Biosci Rep. 37 (4), BSR20160180(2017).">Wooller, S. K., Benstead-Hume, G., Chen, X., Ali, Y., Pearl, F. M. G. Bioinformatics in translational drug discovery. Biosci Rep. 37 (4), BSR20160180(2017).
  2. Computational approaches streamlining drug discovery. Nature. 616 (7958), 673-685 (2023).">Sadybekov, A. V., Katritch, V. Computational approaches streamlining drug discovery. Nature. 616 (7958), 673-685 (2023).
  3. Systematic integration of biomedical knowledge prioritizes drugs for repurposing. eLife. 6, e26726(2017).">Himmelstein, D. S., et al. Systematic integration of biomedical knowledge prioritizes drugs for repurposing. eLife. 6, e26726(2017).
  4. Text mining and expert curation to develop a database on psychiatric diseases and their genes. Database (Oxford). 2017, bax043(2017).">Gutiérrez-Sacristán, A., et al. Text mining and expert curation to develop a database on psychiatric diseases and their genes. Database (Oxford). 2017, bax043(2017).
  5. A knowledge graph approach to elucidate the role of organellar pathways in disease via biomedical reports. J Vis Exp. (200), e65084(2023).">Pelletier, A. R., et al. A knowledge graph approach to elucidate the role of organellar pathways in disease via biomedical reports. J Vis Exp. (200), e65084(2023).
  6. A knowledge graph to interpret clinical proteomics data. Nat Biotechnol. 40 (5), 692-702 (2022).">Santos, A., et al. A knowledge graph to interpret clinical proteomics data. Nat Biotechnol. 40 (5), 692-702 (2022).
  7. PharmKG: A dedicated knowledge graph benchmark for bomedical data mining. Briefings in Bioinformatics. 22 (4), bbaa344(2021).">Zheng, S., et al. PharmKG: A dedicated knowledge graph benchmark for bomedical data mining. Briefings in Bioinformatics. 22 (4), bbaa344(2021).
  8. Biomedical knowledge graph-optimized prompt generation for large language models. Bioinformatics. 40 (9), btae560(2023).">Soman, K., et al. Biomedical knowledge graph-optimized prompt generation for large language models. Bioinformatics. 40 (9), btae560(2023).
  9. ArXiv. , (2023).">Xiao, Y., et al. Know2BIO: A comprehensive dual-view benchmark for evolving biomedical knowledge graphs. ArXiv. , (2023).
  10. Large language models in medicine. Nat Med. 29 (8), 1930-1940 (2023).">Thirunavukarasu, A. J., et al. Large language models in medicine. Nat Med. 29 (8), 1930-1940 (2023).
  11. ArXiv. , (2023).">Lehman, E., et al. Do we still need clinical language models. ArXiv. , (2023).
  12. Large language models encode clinical knowledge. Nature. 620, 172-180 (2022).">Singhal, K., et al. Large language models encode clinical knowledge. Nature. 620, 172-180 (2022).
  13. ArXiv. , (2022).">Agrawal, M., Hegselmann, S., Lang, H., Kim, Y., Sontag, D. Large language models are few-shot clinical information extractors. ArXiv. , (2022).
  14. Assessing the accuracy and reliability of AI-generated medical responses: An evaluation of the Chat-GPT model. Res Sq. , (2023).">Johnson, D., et al. Assessing the accuracy and reliability of AI-generated medical responses: An evaluation of the Chat-GPT model. Res Sq. , (2023).
  15. Evaluation of ChatGPT on biomedical tasks: A zero-shot comparison with fine-tuned generative transformers. Jahan, I., Laskar, M. T. R., Peng, C., Huang, J. The 22nd Workshop on Biomedical Natural Language Processing and BioNLP Shared Tasks, , 326-336 (2023).
  16. Assessing the accuracy of responses by the language model ChatGPT to questions regarding bariatric surgery. Obes Surg. 33 (6), 1790-1796 (2023).">Samaan, J. S., et al. Assessing the accuracy of responses by the language model ChatGPT to questions regarding bariatric surgery. Obes Surg. 33 (6), 1790-1796 (2023).
  17. Trialling a large language model (ChatGPT) in general practice with the applied knowledge test: observational study demonstrating opportunities and limitations in primary care. JMIR Med Educ. 9, e46599(2023).">Thirunavukarasu, A. J., et al. Trialling a large language model (ChatGPT) in general practice with the applied knowledge test: observational study demonstrating opportunities and limitations in primary care. JMIR Med Educ. 9, e46599(2023).
  18. ArXiv. , (2023).">Sun, W., et al. Is ChatGPT Good at search? Investigating large language models as re-ranking agents. ArXiv. , (2023).
  19. ArXiv. , (2023).">Xu, R., Feng, Y., Chen, H. ChatGPT vs. Google: A comparative study of search performance and user experience. ArXiv. , (2023).
  20. TruthfulQA: Measuring how models mimic human falsehoods. Lin, S., Hilton, J., Evans, O. Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers, , 3214-3252 (2022).
  21. ArXiv. , (2023).">Manakul, P., Liusie, A., Gales, M. J. F. SelfCheckGPT: Zero-resource black-box hallucination detection for generative large language models. ArXiv. , (2023).
  22. FActScore: Fine-grained atomic evaluation of factual precision in long form text generation. Min, S., et al. Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing, , 12076-12100 (2023).
  23. Is ChatGPT fair for recommendation? Evaluating fairness in large language model recommendation. Proceedings of the 17th ACM Conference on Recommender Systems. , 993-999 (2023).">Zhang, J., et al. Is ChatGPT fair for recommendation? Evaluating fairness in large language model recommendation. Proceedings of the 17th ACM Conference on Recommender Systems. , 993-999 (2023).
  24. Building an ethical and trustworthy biomedical AI ecosystem for the translational and clinical integration of foundation models. Bioengineering. 11 (10), 984(2024).">Sankar, B. S., et al. Building an ethical and trustworthy biomedical AI ecosystem for the translational and clinical integration of foundation models. Bioengineering. 11 (10), 984(2024).
  25. ChatGPT and Other large language models are double-edged swords. Radiology. 307 (2), e230163(2023).">Shen, Y., et al. ChatGPT and Other large language models are double-edged swords. Radiology. 307 (2), e230163(2023).
  26. Ethics of large language models in medicine and medical research. Lancet Digit Health. 5 (6), e333-e335 (2023).">Li, H., et al. Ethics of large language models in medicine and medical research. Lancet Digit Health. 5 (6), e333-e335 (2023).
  27. ArXiv. , (2020).">Lewis, P., et al. Retrieval-augmented generation for knowledge-intensive NLP tasks. ArXiv. , (2020).
  28. ArXiv. , (2023).">Gao, Y., et al. Retrieval-augmented generation for large language models: A survey. ArXiv. , (2023).
  29. PubTator central: Automated concept annotation for biomedical full text articles. Nucleic Acids Res. 47 (W1), W587-W593 (2019).">Wei, C. -H., Allot, A., Leaman, R., Lu, Z. PubTator central: Automated concept annotation for biomedical full text articles. Nucleic Acids Res. 47 (W1), W587-W593 (2019).
  30. ArXiv. , (2024).">Wei, C. -H., et al. PubTator 3.0: An AI-powered literature resource for unlocking biomedical knowledge. ArXiv. , (2024).
  31. Comparative Reasoning for knowledge graph fact checking. Liu, L., Ji, H., Xu, J., Tong, H. 2022 IEEE International Conference on Big Data (Big Data), , 2309-2312 (2022).
  32. Knowledge Graph reasoning and its applications. Liu, L., Tong, H. Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, , 5813-5814 (2023).
  33. ArXiv. , (2024).">Liu, L., et al. Logic query of thoughts: Guiding large language models to answer complex logic queries with knowledge graphs. ArXiv. , (2024).
  34. Barack's wife hillary: Using Knowledge graphs for fact-aware language modeling. Logan, R., Liu, N. F., Peters, M. E., Gardner, M., Singh, S. Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, , 5962-5971 (2019).
  35. ArXiv. , (2024).">Sun, J., et al. Think-on-graph: Deep and responsible reasoning of large language model on knowledge graph. ArXiv. , (2024).
  36. ArXiv. , (2024).">Wen, Y., Wang, Z., Sun, J. MindMap: Knowledge Graph prompting sparks graph of thoughts in large language models. ArXiv. , (2024).
  37. ArXiv. , (2020).">Wang, C., Liu, X., Song, D. Language models are open knowledge graphs. ArXiv. , (2020).
  38. QA-GNN: Reasoning with Language Models and Knowledge Graphs for Question Answering. Yasunaga, M., Ren, H., Bosselut, A., Liang, P., Leskovec, J. Proceedings of the 2021 Conference of the North American Chapter of the, , 535-546 (2021).
  39. SimKGC: Simple contrastive knowledge graph completion with pre-trained language models. Wang, L., Zhao, W., Wei, Z., Liu, J. Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers, , 4281-4294 (2022).
  40. FLAIRS. 36, (2023).">Lazar, A. Graph neural networks for link prediction. FLAIRS. 36, (2023).
  41. ArXiv. , (2018).">Zhang, M., Chen, Y. Link prediction based on graph neural networks. ArXiv. , (2018).
  42. XGNN: Towards model-level explanations of graph neural networks. Yuan, H., Tang, J., Hu, X., Ji, S. Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining, , (2020).
  43. CFGExplainer: Explaining graph neural network-based malware classification from control flow graphs. Herath, J. D., Wakodikar, P., Yang, P., Yan, G. 2022 52nd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), , 172-184 (2022).
  44. GNNExplainer: Generating explanations for graph neural networks. Adv Neural Inf Process Syst. 32, 9240-9251 (2019).">Ying, R., Bourgeois, D., You, J., Zitnik, M., Leskovec, J. GNNExplainer: Generating explanations for graph neural networks. Adv Neural Inf Process Syst. 32, 9240-9251 (2019).
  45. The Bgee suite: Integrated curated expression atlas and comparative transcriptomics in animals. Nucleic Acids Res. 49 (D1), D831-D847 (2021).">Bastian, F. B., et al. The Bgee suite: Integrated curated expression atlas and comparative transcriptomics in animals. Nucleic Acids Res. 49 (D1), D831-D847 (2021).
  46. Comparative Toxicogenomics Database (CTD): Update 2023. Nucleic Acids Res. 51 (D1), D1257-D1262 (2023).">Davis, A. P., et al. Comparative Toxicogenomics Database (CTD): Update 2023. Nucleic Acids Res. 51 (D1), D1257-D1262 (2023).
  47. ClinGen - The clinical genome resource. N Engl J Med. 372 (23), 2235-2242 (2015).">Rehm, H. L., et al. ClinGen - The clinical genome resource. N Engl J Med. 372 (23), 2235-2242 (2015).
  48. ClinVar: Improvements to accessing data. Nucleic Acids Res. 48 (D1), D835-D844 (2020).">Landrum, M. J., et al. ClinVar: Improvements to accessing data. Nucleic Acids Res. 48 (D1), D835-D844 (2020).
  49. The human disease ontology 2022 update. Nucleic Acids Res. 50 (D1), D1255-D1261 (2022).">Schriml, L. M., et al. The human disease ontology 2022 update. Nucleic Acids Res. 50 (D1), D1255-D1261 (2022).
  50. The DisGeNET cytoscape app: Exploring and visualizing disease genomics data. Comput Struct Biotechnol J. 19, 2960-2967 (2021).">Piñero, J., Saüch, J., Sanz, F., Furlong, L. I. The DisGeNET cytoscape app: Exploring and visualizing disease genomics data. Comput Struct Biotechnol J. 19, 2960-2967 (2021).
  51. DrugBank 6.0: The DrugBank knowledgebase for 2024. Nucleic Acids Res. 52 (D1), D1265-D1275 (2024).">Knox, C., et al. DrugBank 6.0: The DrugBank knowledgebase for 2024. Nucleic Acids Res. 52 (D1), D1265-D1275 (2024).
  52. GRNdb: Decoding the gene regulatory networks in diverse human and mouse conditions. Nucleic Acids Res. 49 (D1), D97-D103 (2021).">Fang, L., et al. GRNdb: Decoding the gene regulatory networks in diverse human and mouse conditions. Nucleic Acids Res. 49 (D1), D97-D103 (2021).
  53. The Gene Ontology resource: enriching a GOld mine. Nucleic Acids Res. 49 (D1), D325-D334 (2021).">Gene Ontology Consortium. The Gene Ontology resource: enriching a GOld mine. Nucleic Acids Res. 49 (D1), D325-D334 (2021).
  54. Genenames.org: The HGNC resources in 2023. Nucleic Acids Res. 51 (D1), D1003-D1009 (2023).">Seal, R. L., et al. Genenames.org: The HGNC resources in 2023. Nucleic Acids Res. 51 (D1), D1003-D1009 (2023).
  55. NCATS Inxight Drugs: A comprehensive and curated portal for translational research. Nucleic Acids Res. 50 (D1), D1307-D1316 (2022).">Siramshetty, V. B., et al. NCATS Inxight Drugs: A comprehensive and curated portal for translational research. Nucleic Acids Res. 50 (D1), D1307-D1316 (2022).
  56. KEGG: New perspectives on genomes, pathways, diseases and drugs. Nucleic Acids Res. 45 (D1), D353-D361 (2017).">Kanehisa, M., Furumichi, M., Tanabe, M., Sato, Y., Morishima, K. KEGG: New perspectives on genomes, pathways, diseases and drugs. Nucleic Acids Res. 45 (D1), D353-D361 (2017).
  57. Medical Subject Headings (MeSH). Bull Med Libr Assoc. 88 (3), 265-266 (2000).">Lipscomb, C. E. Medical Subject Headings (MeSH). Bull Med Libr Assoc. 88 (3), 265-266 (2000).
  58. medRxiv. , (2022).">Vasilevsky, N. A., et al. Mondo: Unifying diseases for the world, by the world. medRxiv. , (2022).
  59. BioThings SDK: A toolkit for building high-performance data APIs in biomedical research. Bioinformatics. 38 (7), 2077-2079 (2022).">Lelong, S., et al. BioThings SDK: A toolkit for building high-performance data APIs in biomedical research. Bioinformatics. 38 (7), 2077-2079 (2022).
  60. OMIM.org: Leveraging knowledge across phenotype-gene relationships. Nucleic Acids Res. 47 (D1), D1038-D1043 (2019).">Amberger, J. S., Bocchini, C. A., Scott, A. F., Hamosh, A. OMIM.org: Leveraging knowledge across phenotype-gene relationships. Nucleic Acids Res. 47 (D1), D1038-D1043 (2019).
  61. PathFX provides mechanistic insights into drug efficacy and safety for regulatory review and therapeutic development. PLoS Comput Biol. 14 (12), e1006614(2018).">Wilson, J. L., et al. PathFX provides mechanistic insights into drug efficacy and safety for regulatory review and therapeutic development. PLoS Comput Biol. 14 (12), e1006614(2018).
  62. PharmGKB, an Integrated resource of pharmacogenomic knowledge. Curr Protoc. 1 (8), e226(2021).">Gong, L., Whirl-Carrillo, M., Klein, T. E. PharmGKB, an Integrated resource of pharmacogenomic knowledge. Curr Protoc. 1 (8), e226(2021).
  63. The reactome pathway knowledgebase 2022. Nucleic Acids Res. 50 (D1), D687-D692 (2022).">Gillespie, M., et al. The reactome pathway knowledgebase 2022. Nucleic Acids Res. 50 (D1), D687-D692 (2022).
  64. The SIDER database of drugs and side effects. Nucleic Acids Res. 44 (D1), D1075-D1079 (2016).">Kuhn, M., Letunic, I., Jensen, L. J., Bork, P. The SIDER database of drugs and side effects. Nucleic Acids Res. 44 (D1), D1075-D1079 (2016).
  65. SMPDB 2.0: Big improvements to the small molecule pathway database. Nucleic Acids Res. 42 (Database issue), D478-D484 (2014).">Jewison, T., et al. SMPDB 2.0: Big improvements to the small molecule pathway database. Nucleic Acids Res. 42 (Database issue), D478-D484 (2014).
  66. STRING v11: Protein-protein association networks with increased coverage, supporting functional discovery in genome-wide experimental datasets. Nucleic Acids Res. 47 (D1), D607-D613 (2019).">Szklarczyk, D., et al. STRING v11: Protein-protein association networks with increased coverage, supporting functional discovery in genome-wide experimental datasets. Nucleic Acids Res. 47 (D1), D607-D613 (2019).
  67. Therapeutic target database update 2022: Facilitating drug discovery with enriched comparative data of targeted agents. Nucleic Acids Res. 50 (D1), D1398-D1407 (2022).">Zhou, Y., et al. Therapeutic target database update 2022: Facilitating drug discovery with enriched comparative data of targeted agents. Nucleic Acids Res. 50 (D1), D1398-D1407 (2022).
  68. The Unified Medical Language System (UMLS): Integrating biomedical terminology. Nucleic Acids Res. 32 (Database issue), D267-D270 (2004).">Bodenreider, O. The Unified Medical Language System (UMLS): Integrating biomedical terminology. Nucleic Acids Res. 32 (Database issue), D267-D270 (2004).
  69. Unification of multi-species vertebrate anatomy ontologies for comparative biology in Uberon. J Biomed Semantics. 5, 21(2014).">Haendel, M. A., et al. Unification of multi-species vertebrate anatomy ontologies for comparative biology in Uberon. J Biomed Semantics. 5, 21(2014).
  70. UniProt: the Universal Protein Knowledgebase in 2023. Nucleic Acids Res. 51 (D1), D523-D531 (2023).">UniProt Consortium. UniProt: the Universal Protein Knowledgebase in 2023. Nucleic Acids Res. 51 (D1), D523-D531 (2023).
  71. Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension. Lewis, M., et al. Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, , 7871-7880 (2020).
  72. Cloud-based phrase mining and analysis of user-defined phrase-category association in biomedical publications. J Vis Exp. (144), e59108(2019).">Sigdel, D., et al. Cloud-based phrase mining and analysis of user-defined phrase-category association in biomedical publications. J Vis Exp. (144), e59108(2019).
  73. FM. ArXiv. , (2023).">Ferrara, E. Should ChatGPT be biased? Challenges and risks of bias in large language models. FM. ArXiv. , (2023).
  74. ArXiv. , (2023).">Gallegos, I. O., et al. Bias and fairness in large language models: A Survey. ArXiv. , (2023).
  75. Fighting reviewer fatigue or amplifying bias? Considerations and recommendations for use of ChatGPT and other large language models in scholarly peer review. Res Integr Peer Rev. 8 (1), 4(2023).">Hosseini, M., Horbach, S. P. J. M. Fighting reviewer fatigue or amplifying bias? Considerations and recommendations for use of ChatGPT and other large language models in scholarly peer review. Res Integr Peer Rev. 8 (1), 4(2023).
  76. Kotek, H., Dockum, R., Sun, D. Gender bias and stereotypes in Large Language Models. Proceedings of The ACM Collective Intelligence Conference, , 12-24 (2023).
  77. Prompting techniques for reducing social bias in LLMs through System 1 and System 2 Cognitive Processes. ArXiv. , (2024).">Kamruzzaman, M., Kim, G. L. Prompting techniques for reducing social bias in LLMs through System 1 and System 2 Cognitive Processes. ArXiv. , (2024).
  78. ArXiv. , (2024).">Raza, S., Raval, A., Chatrath, V. MBIAS: Mitigating bias in large language models while retaining context. ArXiv. , (2024).
  79. ArXiv. , (2023).">Chen, B., Zhang, Z., Langrené, N., Zhu, S. Unleashing the potential of prompt engineering in Large Language Models: A comprehensive review. ArXiv. , (2023).
  80. ArXiv. , (2023).">White, J., et al. A prompt pattern catalog to enhance prompt engineering with ChatGPT. ArXiv. , (2023).
  81. Prompt engineering as an important emerging skill for medical professionals: Tutorial. J Med Internet Res. 25, e50638(2023).">Meskó, B. Prompt engineering as an important emerging skill for medical professionals: Tutorial. J Med Internet Res. 25, e50638(2023).
  82. ArXiv. , (2023).">Wang, J., et al. Prompt Engineering for Healthcare: Methodologies and applications. ArXiv. , (2023).
  83. ArXiv. , (2023).">Luo, Y., et al. An empirical study of catastrophic forgetting in large language models during continual fine-tuning. ArXiv. , (2023).
  84. Retrieval meets Long Context Large Language Models. ArXiv. , (2023).">Xu, P., et al. Retrieval meets Long Context Large Language Models. ArXiv. , (2023).
  85. ArXiv. , (2023).">Chen, S., Wong, S., Chen, L., Tian, Y. Extending context window of Large Language Models via positional interpolation. ArXiv. , (2023).
  86. ArXiv. , (2024).">Labrak, Y., et al. BioMistral: A collection of open-source pretrained large language models for medical domains. ArXiv. , (2024).
  87. BioGPT: Generative pre-trained transformer for biomedical text generation and mining. Brief Bioinform. 23 (6), bbac409(2022).">Luo, R., et al. BioGPT: Generative pre-trained transformer for biomedical text generation and mining. Brief Bioinform. 23 (6), bbac409(2022).
  88. ArXiv. , (2024).">Wang, C., et al. A survey for large language models in biomedicine. ArXiv. , (2024).

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Biomedical Knowledge BasesExplainable AIKnowledge GraphRetrieval Augmented GenerationLarge Language ModelsText Mining AnalysisHypothesis ValidationDrug Disease RelationshipsAgentic SystemsCardiomyopathy Therapeutics

Related Articles