Каждая компания сейчас думает об улучшении своей стратегии ИИ, и я думаю, как разработчик программного обеспечения, должна ли она у меня быть?

Я разработчик программного обеспечения, который в основном пишет код Typescript/javascript, и я хотел понять эту магию, называемую AI и M.

Поскольку я работаю в компании Data Engineering, я больше занимаюсь всем, что связано с данными. И если подумать, большая часть ML/AI манипулирует данными.

Поэтому, как только я увидел, что chatgpt, gihub copilot и шепчущий код amazon могут сделать с точки зрения кодирования, мой страх быть замененным ИИ включился, и я решил узнать больше о том, что происходит в космосе.

Хорошая вещь о программном обеспечении заключается в том, что есть много доступных проектов с открытым исходным кодом. Один из таких проектов — langchainjs. Это javascript-имплементация langchain, написанная на python.

Когда вы видите библиотеку Javascript, которая может помочь вам создавать приложения с использованием ИИ, первый вопрос приходит вам на ум: Что я могу создать с ее помощью?. Использовать возможности таких моделей, как OpenAI gpt, очень легко, и здесь есть множество отличных примеров.

Я думаю, что это естественно, когда вы впервые открываете для себя такие библиотеки, волноваться о создании большого приложения для искусственного интеллекта. И может быть кто-то создаст приложение или подобный инструмент, используя langchain.

Я экспериментировал с созданием приложения для терминала чата в формате PDF, используя langchain и OpenAI, используя вложения OpenAI. Вы можете взять любой файл PDF и создать вложения с помощью API встраивания и сохранить результаты в векторной базе данных. Затем, используя языковую модель в этом случае «text-davinchi-003», вы можете задать вопрос, а затем модель находит наиболее подходящие тексты из вложений и строит ответ в соответствии с этим.

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

Еще одна замечательная платформа, позволяющая публиковать модели с открытым исходным кодом, — Huggingface. Вы даже можете запустить свою модель и показать пользователям, на что она способна, используя их бесплатные ресурсы графического процессора. Langchain также поддерживает использование Huggingface API.

Читая об ML и алгоритмах, я нахожу интересным один из них — Graph Convulational Network или Graph Neural Network (используется взаимозаменяемо). Поработав с Neo4j, я могу сказать, что структура графических данных может быть мощным инструментом для извлечения знаний, и я думаю, что, объединив NLP и GNN, вы можете создавать действительно мощные и интеллектуальные приложения.

На данный момент у меня нет стратегии ИИ для перехода в поле, потому что кажется, что нужно проделать много исследовательской работы, чтобы придумать такие алгоритмы, но я думаю, что иметь некоторое представление об объединении этих инструментов для создания приложений полезно. . Разработчики программного обеспечения уже использовали инструменты искусственного интеллекта до chatgpt в форме поиска Google, поэтому я думаю, что внедрение новых инструментов, таких как copilot или codewhisperer, — это просто дополнение к нашим наборам инструментов и один из многих способов повышения производительности.

Еще предстоит понять и увидеть, как все это повлияет на рынок труда и экономику, но я думаю, что нас ждет захватывающее путешествие в будущее.