ПОПРОБУЙТЕ ЗДЕСЬ
Open Canvas — это веб-приложение с открытым исходным кодом для совместной работы с агентами для улучшения написания документов. Он вдохновлен «Canvas» OpenAI, но с несколькими ключевыми отличиями.
Открытый исходный код : весь код, от внешнего интерфейса до агента генерации контента и агента отражения, имеет открытый исходный код и лицензируется MIT.
Встроенная память : Open Canvas поставляется сразу с агентом отражения, который сохраняет правила стиля и пользовательскую информацию в хранилище общей памяти. Это позволяет Open Canvas запоминать факты о вас во время сеансов.
Начать с существующих документов : Open Canvas позволяет пользователям начинать с пустого текста или редактора кода на выбранном ими языке, что позволяет вам начать сеанс с существующим контентом вместо того, чтобы начинать с взаимодействия в чате. Мы считаем, что это идеальный UX, потому что во многих случаях у вас уже есть некоторый контент для начала, и вы хотите продолжить его работу.
Память : Open Canvas имеет встроенную систему памяти, которая автоматически генерирует размышления и воспоминания о вас, а также историю вашего чата. Затем они включаются в последующие взаимодействия в чате, чтобы обеспечить более персонализированный опыт.
Настраиваемые быстрые действия . Настраиваемые быстрые действия позволяют вам определять собственные подсказки, привязанные к вашему пользователю и сохраняющиеся на протяжении всего сеанса. Затем их можно легко вызвать одним щелчком мыши и применить к артефакту, который вы сейчас просматриваете.
Готовые быстрые действия . Существует также ряд готовых быстрых действий для распространенных задач по написанию и кодированию, которые всегда доступны.
Управление версиями артефактов : ко всем артефактам привязана «версия», позволяющая вам путешествовать во времени и видеть предыдущие версии вашего артефакта.
Код, уценка или и то, и другое . Представление артефактов позволяет просматривать и редактировать как код, так и уценку. Вы даже можете иметь чаты, которые генерируют код и артефакты уценки, и переключаться между ними.
Рендеринг и редактирование уценки в реальном времени . Редактор уценки Open Canvas позволяет просматривать визуализированную уценку во время редактирования без необходимости переключаться назад и на четвертую позицию.
Вы можете бесплатно использовать нашу развернутую версию, посетив opencanvas.langchain.com.
или
Вы можете клонировать этот репозиторий и запустить его локально или развернуть в своем облаке. Подробную информацию о том, как это сделать, см. в следующем разделе.
Запустить или разработать Open Canvas очень просто. Начните с клонирования этого репозитория и перехода в каталог.
git клон https://github.com/langchain-ai/open-canvas.gitcd open-canvas
Далее устанавливаем зависимости через Yarn:
установка пряжи
Затем установите LangGraph Studio, необходимую для локального запуска графиков, или создайте учетную запись LangSmith для развертывания в рабочей среде LangGraph Cloud.
После этого скопируйте содержимое файла .env.example
в .env
и задайте необходимые значения:
# LangSmith tracingLANGCHAIN_TRACING_V2=true LANGCHAIN_API_KEY=# Ключи API LLM# Anthropic используется для отраженияANTHROPIC_API_KEY=# OpenAI используется для генерации контентаOPENAI_API_KEY=# Развертывание LangGraph или локальный сервер разработки через LangGraph Studio.# При локальном запуске этот URL-адрес должен быть установлен в файле `constants.ts`. # LANGRAPH_API_URL=# Супабаза для аутентификации# Public ключиNEXT_PUBLIC_SUPABASE_URL= NEXT_PUBLIC_SUPABASE_ANON_KEY=
Наконец, запустите сервер разработки:
разработчик пряжи
Затем откройте localhost:3000 в браузере и начните взаимодействовать!
Вы также можете посмотреть короткое (2 минуты) видеоруководство по локальной настройке Open Canvas здесь.
Open Canvas совместим с любой моделью LLM. В текущем развертывании настроены следующие модели:
Антропный Клод 3 Хайку? : Haiku — самая быстрая модель Anthropic, отлично подходящая для быстрых задач, таких как редактирование документа. Зарегистрируйте аккаунт Anthropic здесь.
Фейерверк Лама 3 70Б ? : Llama 3 — это модель SOTA с открытым исходным кодом от Meta, работающая на базе Fireworks AI. Вы можете зарегистрировать аккаунт здесь.
OpenAI GPT 4o Mini? : GPT 4o Mini — новейшая и самая маленькая модель OpenAI. Вы можете подписаться на ключ API здесь.
Если вы хотите добавить новую модель, выполните следующие простые шаги:
Добавьте или обновите переменные поставщика модели в файле constants.ts
.
Установите необходимый пакет для провайдера (например @langchain/anthropic
).
Обновите функцию getModelNameAndProviderFromConfig
в src/agent/utils.ts
включив в нее новое имя модели и поставщика.
Вручную протестировав, проверив, вы можете:
4а. Создать новый артефакт
4б. Создать последующее сообщение (происходит автоматически после создания артефакта)
4в. Обновите артефакт через сообщение в чате
4д. Обновите артефакт с помощью быстрого действия
4е. Повторите для текста/кода (убедитесь, что оба работают)
Ниже приведен список функций, которые мы хотели бы добавить в Open Canvas в ближайшем будущем:
Рендеринг React в редакторе . В идеале, если у вас есть Open Canvas, генерирующий код React (или HTML), мы сможем визуализировать его в реальном времени в редакторе. Изменить : Сейчас это находится на стадии планирования!
Несколько помощников . Пользователи должны иметь возможность создавать несколько помощников, каждый из которых имеет собственное хранилище памяти.
Предоставьте помощникам собственные «инструменты» . Как только мы реализуем RemoteGraph
в LangGraph.js, пользователи смогут предоставить помощникам доступ для вызова своих собственных графиков в качестве инструментов. Это означает, что вы можете настроить своего помощника так, чтобы он имел доступ к текущим событиям, вашему личному графику знаний и т. д.
У вас есть запрос на функцию? Пожалуйста, откройте тему!
Мы хотели бы продолжить разработку и улучшение Open Canvas и нуждаемся в вашей помощи!
Начнем с того, что на GitHub есть несколько проблем с запросами функций, описывающими улучшения и дополнения, которые сделают UX приложения еще лучше. Существует три основных ярлыка:
frontend
: эта метка добавляется к проблемам, которые ориентированы на пользовательский интерфейс и не требуют большой работы над агентом(ами).
ai
: Этот ярлык добавляется к проблемам, направленным на улучшение агентов LLM.
fullstack
: эта метка добавляется к проблемам, требующим изменения как внешнего интерфейса, так и кода агента.
Если у вас есть вопросы по поводу участия, свяжитесь со мной по электронной почте: brace(at)langchain(dot)dev
. Если есть общие ошибки/проблемы с кодом, откройте проблему на GitHub.