The Dragon Code News
260 subscribers
218 photos
7 videos
4 files
239 links
Рассказываем о том, над чем работаем и что может быть полезным разработчикам 🙂

dragon-code.pro
Download Telegram
ChatGPT идёт лесом - LLama нашё всё 😏

Запустить нейронную модель Meta Llama 3.1 на локальном компе в докере очень просто:

docker run -d -p 11434:11434 --gpus=all -v ollama:/root/.ollama --name ollama --restart always ollama/ollama

docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda

docker exec ollama ollama run llama3.1

И всё :)

Дальше можно с ней хоть через консоль общаться (не удобно), хоть через веб-интерфейс (https://localhost:3000).

Основная фишка - модель может работать без интернета и также можно её подключить к тому же PhpStorm через плагин https://plugins.jetbrains.com/plugin/21056-codegpt. Вдобавок, работает через Docker, так что в ОС ничего дополнительно ставить не надо, но если хотите - можно 🙂

Модель может работать на CPU, но это будет значительно медленней чем на ядрах RTX GPU.

PS:
- Почему модель Llama 3.1? Она же старая. Есть версия 3.3
- Да, есть, но сколько для неё нужно ресурсов?.. Модель Llama версии 3.1 доступна в трёх вариантах: 8b, 70b и 405b, где "b" означает количество миллиардов параметров. Для модели 8b нужно около 10 гигабайт оперативной памяти, например. Модель Llama 3.2 доступна в вариантах на 1b и 3b. Лично мне это кажется очень маленьким. А версия Llama 3.3 доступна только в варианте на 70b параметров.


Источники:

- Сервис для запуска: https://github.com/ollama/ollama
- Веб-интерфейс: https://github.com/open-webui/open-webui
- Где нашёл: https://www.youtube.com/watch?v=bYn8JNTFXpc
🔥52👍2
Итак, мозговой штурм

В Laravel есть консольная команда для «схлапывания» миграций - «php artisan schema:dump». При вызове команды с параметром «--prune» будут удалены более ненужные файлы этих миграций.

По завершении работы экспорта схемы в sql файл, вызывается эвент SchemaDumped, но он не содержит информации о том, был ли вызов команды с параметром удаления файлов.

В итоге был предложен PR на добавление этого функционала с именем эвента SchemaPruned. Название совсем не отражает суть того, на что он тригерится.

Какое название для этого эвента подойдёт лучше всего?

https://github.com/laravel/framework/pull/53870#issuecomment-2541758982
Вот и перешагнули порог общего количества скачиваний в 40 миллионов всех наших опенсурсных продуктов благодаря Вашей поддержке! 🎉🎉🎉

Наши проекты:

- https://github.com/TheDragonCode
- https://github.com/Laravel-Lang
- https://github.com/cashbox-laravel
- https://github.com/volunteers-crm
6👍74👏1
Forwarded from adelf on programming
Случайно обнаружил, что можно проектам кастомные иконки делать. Можно прямо на проекте правой кнопкой кликнуть и там выбрать пункт, либо просто скопировать icon.svg(или png) в папку .idea.
4
Forwarded from Kvede Новости
Пусть Новый Год принесёт счастье в каждый дом!

Дорогие друзья!

Вот и наступает Новый 2025 год. Хотим пожелать Вам крепкого здоровья, счастья, любви, успехов в работе и личной жизни, комфорта, уюта и безопасности, а также исполнения всех ваших желаний!

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

Также хотим пожелать Вам фантастических и незабываемых впечатлений в 2025-м году, например, путешествия в далёкие страны, знакомство с новыми людьми и культурами, также встречу с огнедышащим гусём!

Пусть Новый Год принесёт Вам много радости, удачи и благополучия! С наступающим! 🎉🎉🎉
18🔥3🥰3
Forwarded from Kvede Новости
Заканчивается 2024 год, и мы подводим итоги работы нашего анти-спам бота @KvedeBot. За этот период он проверил 124'086 сообщений и пополнил свою базу ещё на 2'586'294 спам-сообщения для улучшения идентификации. Это означает, что наш бот стал ещё умнее и эффективнее в борьбе со спамом. Кроме того, @KvedeBot познакомился с 10'322 людьми, но, к сожалению, среди них оказалось 2'153 спамеров и 4'342 подозреваются в нём. Мы продолжаем работать над улучшением нашего бота, чтобы он мог распознавать спам и защищать пользователей от нежелательной информации.

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

Поздравляем вас с наступающим Новым годом! Пусть он принесёт вам только приятные и полезные сообщения, а наш анти-спам бот поможет вам в этом. Желаем вам приятного общения, новых интересных знакомств и ярких эмоций в новом году!
3👍1
Forwarded from Kvede Новости
Напоминаем, что проект @KvedeBot находится в стадии бета-разработки и бесплатен для всех 🎉

Просто добавьте бота в группу, назначьте администратором и выдайте права на удаление сообщений и блокировку пользователей. И всё. Да, так просто 🤗
👍2
⚡️Масштабный сбой в работе операторов связи фиксируют пользователи – интернет не работает у «Билайна», «Мегафона», «Теле 2», пишет агентство «Москва».
Китайский помощник искусственного интеллекта DeepSeek возглавил топ по скачиванию в США. ChatGPT-OpenAI была основана 10 лет назад, имеет 4500 сотрудников и привлекла $6,6 млрд капитала. Китайская DeepSeek была основана менее 2 лет назад, имеет 200 сотрудников и была разработана менее чем за $10 млн. Но они начали конкурировать.

DeepSeek выпустил версию DeepSeek-V3, LLM с открытым кодом, который соответствует производительности ведущих американских моделей, но требует гораздо меньше затрат на обучение. В тестах производительности DeepSeek-V3 превосходит Llama 3.1 от Meta (запрещена в России) и другие модели с открытым кодом. DeepSeek-V3 соответствует или даже превосходит Chat GPT-4o, уступая лишь Claude 3.5 Sonnet от Anthropic.

Китайская компания сообщает о расходах в размере 5,6 млн долларов на обучение сети по сравнению с предполагаемыми 500 млн долларов, потраченными на обучение Llama-3.1.

Приложения:

Для iPhone: https://apps.apple.com/app/id6737597349
Для Android: https://play.google.com/store/apps/details?id=com.deepseek.chat
👍5
Forwarded from SMESTO Новости
Мошенники начали угонять аккаунты в Telegram через «секретные чаты» — на уловку попались уже ТЫСЯЧИ людей.

Скамеры претворяются службой поддержки и пишут юзерам об удалении учётки, а чтобы «отменить» удаление, нужно перейти по ссылке якобы в секретный чат. На деле никакого секретного чата нет, а ссылка — фишинговая.

При введении логина и пароля мошенники получат доступ ко всей личной информации.

Предупредите родных и друзей.

SMESTO 18+
Migrate Db 3.2.1 released

Changed

- The year in the LICENSE file has been updated by @github-actions[bot] in #45

Fixed

- Added support for doctrine/dbal and fix for Laravel 11

Dependencies

- Bump TheDragonCode/codestyler from 4 to 5 by @dependabot[bot] in #44

https://github.com/TheDragonCode/migrate-db/releases/tag/3.2.1

#migrate_db #db #migrate
⚡️ Китайцев не остановить: Alibaba дропнули НОВУЮ нейросеть Qwen2.5-MAX.

Она бесплатная и доступна в России, а также МОЩНЕЕ ChatGPT и DeepSeek. Имеет ИИ-поиск в интернете, генерирует фото и видео, а API полностью совместима с OpenAI.

DeepSeek коронный, Qwen похоронный.

https://chat.qwenlm.ai

Модель также доступна для локального использования в Ollama:

https://ollama.com/library/qwen2.5
🔥5
Сравнение работы атрибутов в PHP 8.4 с предыдущими версиями.

Вызов также изменился:

dd([
'php 8.3-' => (new Php83())->getLastId(),
'php 8.4+' => new Php84()->getLastId(),
]);

$ art foo
array:2 [
"php 8.3-" => 100
"php 8.4+" => 100
]
👍2
Переименование колонок с совпадающими именами в JSON объекте, лежащем в БД. Возможно ли это?

Допустим, в БД лежит множество записей со следующей структурой:

{"foo": {"title": "Foo"}, "bar": {"title": "Bar"}}
{"foo": {"title": "Foo"}}
{"bar": {"title": "Bar"}}
{"foo": {"title": "Foo"}, "bar": {"title": "Bar"}, "baz": {"title": "Baz"}}


Пришло задание переименовать ключ foo в bar, а bar в foo. Да, просто поменять их местами.

Конечно, это можно сделать на стороне приложения, но обработка, скажем, пары миллионов записей может занять продолжительное время. По нашим тестам, обработка 2.2 млн записей заняла около 56 минут.

Вы удивитесь, но это можно сделать всего за 2.5 минуты. Как? Легко, если в качестве СУБД используется PostgreSQL и колонка имеет тип jsonb, то всего один запрос решит эту проблему:

UPDATE pages
SET metadata = metadata - 'foo' - 'bar'
|| jsonb_build_object('bar', metadata->'foo')
|| jsonb_build_object('foo', metadata->'bar')
WHERE metadata ? 'foo' OR metadata ? 'bar';

-- [2025-02-03 13:14:17] 2,198,814 rows affected in 2 m 23 s 241 ms


Если в объекте есть ключ foo и/или bar, то он будет заменён и на выходе получим результат:

{"bar": {"title": "Foo"}, "foo": {"title": "Bar"}}
{"bar": {"title": "Foo"}}
{"foo": {"title": "Bar"}}
{"bar": {"title": "Foo"}, "foo": {"title": "Bar"}, "baz": {"title": "Baz"}}


return new class extends Migration {
public function up(): void
{
DB::raw(
<<<SQL
UPDATE pages
SET metadata = metadata - 'foo' - 'bar'
|| jsonb_build_object('bar', metadata->'foo')
|| jsonb_build_object('foo', metadata->'bar')
WHERE metadata ? 'foo' OR metadata ? 'bar';
SQL
);
}
};


Вот и всё.

* Время выполнения указано для запуска под Windows, где БД находится в Docker-контейнере.
🔥4👍1
Какой самый дурацкий вопрос от коллег по цеху вы слышали в отношении программирования?
👍1
Пост и комменты… Кто-нибудь понял чему так радуются? Или всё можно приписать культу Laravel?
🤣5🤨2