Потрясающий генеративный ИИ встречает язык программирования Джулии
Комплексное руководство по генеративным проектам ИИ и ресурсам в/для/связано с Юлией.
Джулия-высокоуровневый, высокопроизводительный динамический язык для технических вычислений.
Генеративный ИИ охватывает алгоритмы и модели, которые используют крупномасштабное машинное обучение для создания нового контента (во многих модальностях), автоматизировать, понимать, разрабатывать, извлекать и многое другое, адаптируясь к широкому спектру приложений, выходящих за рамки простого создания контента.
Содержимое
- Генеративные проекты искусственного интеллекта и Юлия
- Модели
- API SDK
- Поставщики моделей
- Поставщики облачных услуг
- Векторные базы данных
- СУБД общего назначения с поддержкой векторного индекса
- Пакеты
- JLL Packages
- Тесты/сравнения
- Приложения/продукты
- Учебные пособия/обучение
- Примечательно упоминает
- Местные развертывания
- Генеративный ИИ - предыдущее поколение
- Необходимо знать Python Projects
- Другие потрясающие списки
Генеративные проекты искусственного интеллекта и Юлия
- Юлиагенайская организация - организация GitHub и сообщество разработчиков и исследователей Юлии, работающих над генеративным ИИ.
Модели
Создавать, тренировать и развернуть большие языковые модели (и другие методы) в Юлии.
- Flux.jl - Flux - это библиотека машинного обучения для Джулии, которая является гибкой и позволяет создавать сложные модели. Однако во время написания я не знаю ни о каких крупных языковых моделях (LLMS), которые были реализованы и обучены в потоке.
- Transformers.jl-Transformers.jl-это пакет Julia, который предоставляет API высокого уровня для использования предварительно обученных моделей трансформаторов. Это также позволяет загружать любые модели от обнимающегося Hub с помощью макро -строки
@hgf_str . - Pickle.jl - Отличный пакет для загрузки весов Pytorch в Джулию (если вы хотите реализовать модели самостоятельно).
- BYTEPAIRENCODING.JL - ЧИСТОЯ ДУЛИЯ Реализация алгоритма пары байтов (BPE). Он используется Transformers.jl для токенизации текста.
- Llama2.jl - llama2.jl предоставляет простой код для вывода и обучения языковых моделей на основе Llama2, основанных на Llama2.c. Он поддерживает загрузку квантовых весов в формате GGUF (вариант
q4_K_S ). Другие подобные проекты: languageModels.jl - Llama.jl - julia interface to llama.cpp, библиотека C/C ++ для запуска языковых моделей локально. Поддерживает широкий спектр моделей.
- Whisper.jl - интерфейс Julia to Whisper.cpp, высокоэффективный вывод в C/C ++ модели Openai's Whisper автоматического распознавания речи (ASR).
API SDK
Поставщики моделей
Доступ к генеративным моделям искусственного интеллекта через официальные API.
- Openai.jl - Удовлетворенная сообществом Джулию Уорппер для API Openai.
Поставщики облачных услуг
Доступ к генеративным моделям ИИ с помощью SDK популярных поставщиков облачных услуг.
- Googlecloud.jl - SDK для Google Cloud. Существует открытый пиар, чтобы включить конечные точки вершины AI.
- Googlegenai.jl - Неофициальная обертка для Google Gemini API.
Векторные базы данных
- Pinecone.jl - SDK для базы данных вектора Pinecone.io.
СУБД общего назначения с поддержкой векторного индекса
| Имя | Джулия Клиент | Примеры использования |
|---|
| Elasticsearch | ElasticsearchClient.jl | Gptseachplugin с Elasticsearch |
| OpenSearch | ElasticsearchClient.jl | GptSeachPlugin с OpenSearch |
| PostgreSQL + PGVector | Libpq.jl | Примеры PGVector для Юлии |
Пакеты
- Replgpt.jl - приносит интерфейс CHATGPT в качестве режима Julia Repl.
- Helpgpt.jl - вызывает CHATGPT, чтобы объяснить любые ошибки в коде Джулии.
- Gengpt3.jl - генеративная функция Gen.jl, которая завершает API OpenAI.
- ReftingTools.jl - помогает в повседневных применениях крупных языковых моделей в Юлии, обертывая предстоящие API, повторно используя подсказки через шаблоны и обеспечивая легкий переход между различными поставщиками моделей (например, OpenAI, Ollama). (Отказ от ответственности: я автор этого пакета.)
- Llmtextanalysis.jl - используйте крупные языковые модели, чтобы раскрыть, оценивать и маркировать темы/концепции/спектры в крупных коллекциях документов. (Отказ от ответственности: я автор этого пакета.)
- AIHELPME.JL - Улучшенная помощь в коде ИИ за счет использования документации пакета (поиск дополненного поколения). Поставляется предварительно упакованным для обычных пакетов Юлии, но может использоваться для любого пакета.
- Aihelpui.jl - веб -графический интерфейс для aihelpme.jl, построенный поверх stipple.jl.
- Protoportal.jl-веб-графический интерфейс для recpitingTools.jl с дополнительными шаблонами и функциональностью (выполнение кода Юлии и автоматическая фиксировка, мета-продвижение, автокритическая, входная запись речи в текст). Похоже на CHATGPT, но предназначен для Джулии.
JLL Packages
JLL являются предварительно построенными библиотеками и исполняемыми документами для легкой установки и вызова не-джулийских проектов (например, C/C ++). Часто они являются первым шагом к пакету Джулии с идиоматическим интерфейсом.
- llama_cpp_jll.jl - пакет JLL для llama.cpp, лучший интерфейс для квантованных моделей в стиле Llama2.
Тесты/сравнения
- Собственная таблица лидеров Julia LLM - Сравнение возможностей генерации языка Юлии различных крупных языковых моделей по ряду задач. Посетите, если вам нужна помощь в выборе правильной модели для вашего приложения.
- Humaneval.jl - Джулия версия Openai/Human -Eval. Он переписывает оригинальные проблемы с Python в версии Julia и предоставляет результаты оценки с несколькими последними LLMS.
Приложения/продукты
Приложения и продукты, которые «работают» с языком Юлии.
- Github Copilot - отличные встроенные предложения с помощью моделей Openai. Это очень хорошо работает с Julia Language для повторяющихся задач по одной строке за раз, но большие кусочки кода редко верны.
- Codium.ai - Great IDE или плагин VSCODE для анализа кода, предложения и генерации тестовых наборов. Хотя тесты написаны больше в стиле Pytest, а не идиоматической Юлии. У него есть бесплатный уровень.
- Примени - Replit's Reply оснащен внутренней моделью, которая поддерживает язык Джулии.
- Codeium - бесплатная альтернатива GitHub Copilot с расширениями для большинства редакторов.
- Cursor - Альтернативная IDE на основе VSCODE с завершением кода и предложениями кода с AI. Это очень хорошо работает с Julia Language.
Приложения и продукты, связанные с Джулией, с использованием LLMS
- Juliahub Askai - Askai - это приложение Juliahub's Rag (поиск дополненного поколения), которое позволяет пользователям задавать вопросы о языке Юлии и его экосистеме. Это бесплатно, но вам нужно войти в Juliahub, чтобы использовать его.
- Помощник Genie UI - Assistant Genie UI - это GPT -4 Powered UI Builder, помогающий пользователям Genie.jl в создании UIS быстрее с использованием естественного языка.
- Comind - социальная сеть, обмен сообщениями и интерфейс LLM, встроенный в Джулию.
Зал ожидания
Новые проекты, которые все еще ждут, чтобы проявить себя и собрать достаточно звезд.
- Flashrank.jl - быстрый и локальный рейтинг документов с моделями, которые могут работать на любом компьютере (на основе процессора). На основе Flashrank Python.
- Semanticcaches.jl - умное кэширование для приложений Genai с крошечной моделью встраивания - уменьшение латентности, по одному запросу за раз.
- Spehulak.jl - Генаяская платформа наблюдения для отладки ваших звонков LLM. Полностью интегрируется с reftingtools.jl.
Неизданный, экспериментальный, но функциональный:
- Milvus.jl - минимальная и неофициальная реализация клиента Milvus Vectord для Юлии.
Архивированные проекты
- Gptcodingtools.jl - инструмент генерации кода для языка Julia с полезными шаблонами быстрого и самовосстановления (интерпретатор ALA Openai Code). Это работает, но развитие было заброшено. (Отказ от ответственности: я автор этого пакета.)
Учебные пособия/обучение
- Учебное пособие по использованию LLMS с Transformers.jl - краткое руководство о том, как использовать Transformers.jl для доступа к LLMS из HUB -Hub.
- Создание тряпичного чат -бота над документацией DataFrames.jl - практическое руководство - практическое руководство по созданию тряпичного чат -бота над документацией DataFrames.jl с использованием только минимальных зависимостей.
- Mini-задачи Genai: извлечение данных из (.*)? Не смотри дальше! - Учебник по извлечению структурированных данных. Часть более крупной серии учебных пособий по небольшим задачам, которые можно выполнить с помощью Genai.
- Крошечная бинарная тряпка - отличная глубокая дивирования в семантическом поиске («R» в тряпке). Он демонстрирует, что с 100 линиями Юлии вы можете искать 15 -метровые куски (размер Википедии) за <20 мс.
Примечательно упоминает
Некоторые из приведенных ниже проектов не обязательно являются специфическими, но примечательными, но примечательными упоминаниями в генеративном пространстве ИИ и интересны для разработчиков Юлии.
Местные развертывания
- Оллама - лучший вариант для тех, кто хочет разместить большую языковую модель на местном уровне. Просто запустите сервер и отправьте запросы с http.jl.
- LM Studio - настольное приложение для хостинга и взаимодействия с LLMS локально. Это отличный вариант для тех, кто хочет использовать LLMS без кодирования. Это бесплатно для личного использования .
Генеративный ИИ - предыдущее поколение
- GenativeModels.jl - Полезная библиотека для обучения более традиционных генеративных моделей, таких как VAES. Он построен поверх Flux.jl.
### Полезные утилиты
- Stipple.jl - для создания интерактивных приложений данных в чистой Юлии (часть экосистемы Genie.jl). Отлично подходит для создания веб-интерфейсов для приложений Genai.
- Taro.jl - мощный анализатор для различных типов документов (Interop на Java). Очень полезен для применений в поисках-аугментировании (RAG).
Необходимо знать Python Projects
Python находится на переднем крае генеративной революции ИИ. К счастью, у нас есть pythoncall.jl, позволяющий нам легко вызвать все приведенные ниже пакеты Python.
- Transformers Huggingface - самая популярная библиотека для доступа к LLMS и другим моделям. Это может быть в основном использовано через Transformers.jl (см. Выше).
- Langchain - лучший вариант для создания приложений на вершине LLMS (например, цепи, агенты). Он имеет много адаптеров для общих моделей, баз данных и других сервисов.
- Индекс Llama - похожий на Langchain, но с акцентом на ориентированные на данные приложения, такие как Rag.
- Инструктор - Простая, но мощная структурированная структура извлечения поверх API Openai. Отлично понимать силу функции, вызывая API вместе с Pydantic.
- Марвин - мощные строительные блоки, чтобы быстро построить приложения ИИ и разоблачить их с помощью готового к производству API.
- Откройте интерпретатор - пусть LLM запустит код на вашем компьютере (например, Python, Javascript, Shell и другие). Локальная альтернатива с открытым исходным кодом.
Другие потрясающие списки
- Потрясающий генеративный ИИ - отличный список для всего генеративного искусственного интеллекта. Вдохновение для этого списка!