Forwarded from Futuris (Anton)
Тут кто-то на реддите нашёл способ как дать ChatGPT полный доступ над своей системой через выполнение небезопасной функции eval в JavaScript, предварительно запилив свой кастомный плагин. Через чат пользователь смог узнать описание и содержимое файлов у себя на жёстком диске, открыть браузер и выполнить поисковый запрос и даже управлять мышкой 🤯
Привет SkyNet 😅
Привет SkyNet 😅
Forwarded from Generative Anton
Очень хорошая статья про то, как из Python’a сделать подобие приличного языка, хоть и бОльшая часть примеров актуальна только для 3.10. Резонирует с первым впечатлением от Python-кода в AWS: все типизировано и многие паттерны из статьи есть и там.
Например, так это просто логическая ошибка в программе (параметры
А вот как можно было бы получить ошибку компиляции:
Например, так это просто логическая ошибка в программе (параметры
driver_id и car_id перепутаны местами в вызове get_ride_info()):class Database:
def get_car_id(self, brand: str) -> int:
def get_driver_id(self, name: str) -> int:
def get_ride_info(self, car_id: int, driver_id: int) -> RideInfo:
db = Database()
car_id = db.get_car_id("Mazda")
driver_id = db.get_driver_id("Stig")
info = db.get_ride_info(driver_id, car_id)А вот как можно было бы получить ошибку компиляции:
from typing import NewType
# Define a new type called "CarId", which is internally an `int`
CarId = NewType("CarId", int)
# Ditto for "DriverId"
DriverId = NewType("DriverId", int)
class Database:
def get_car_id(self, brand: str) -> CarId:
def get_driver_id(self, name: str) -> DriverId:
def get_ride_info(self, car_id: CarId, driver_id: DriverId) -> RideInfo:
db = Database()
car_id = db.get_car_id("Mazda")
driver_id = db.get_driver_id("Stig")
# Type error here -> DriverId used instead of CarId and vice-versa
info = db.get_ride_info(<error>driver_id</error>, <error>car_id</error>)Kobzol’s blog
Writing Python like it’s Rust
You can check out a YouTube recording of a talk based on this blog post.
Forwarded from ".,."
https://github.com/AllTheLife/Bard.el
For anyone interested in using bard from Emacs in simple manner, i wish author was aware of this group and posted himself, but I found it shareworthy.
For anyone interested in using bard from Emacs in simple manner, i wish author was aware of this group and posted himself, but I found it shareworthy.
GitHub
GitHub - AllTheLife/Bard.el: Enjoying using Google Bard in Emacs
Enjoying using Google Bard in Emacs. Contribute to AllTheLife/Bard.el development by creating an account on GitHub.
book of proof Hammack.pdf
1.8 MB
Easter egg: it this book you can find Putin
Forwarded from Open Source
Awesome OSS Monetization
Кураторский список потрясающих подходов к монетизации программного обеспечения с открытым исходным кодом.
Этот список является результатом обширного интернет-исследования. Список разбит на категории на основе концепции, за которую платит плательщик.
Обратите внимание, что список, классификация и терминология представляют собой субъективное мнение по этому вопросу.
https://github.com/PayDevs/awesome-oss-monetization
Кураторский список потрясающих подходов к монетизации программного обеспечения с открытым исходным кодом.
Этот список является результатом обширного интернет-исследования. Список разбит на категории на основе концепции, за которую платит плательщик.
Обратите внимание, что список, классификация и терминология представляют собой субъективное мнение по этому вопросу.
https://github.com/PayDevs/awesome-oss-monetization
Forwarded from Denis Sexy IT 🤖
Media is too big
VIEW IN TELEGRAM
Меня продолжает не отпускать от локальных больших языковых моделей:
Запустил для теста модель на 13 миллиардов параметров, весом ~7 Гб, которая работает на GPU мака с простеньким ARM-процессором M1, 16 Гб RAM и 256 Гб жесткого диска.
Просто посмотрите на скорость этой «ChatGPT» дома которая работает без интернета. Это становится каким-то странным хобби, потому что мне просто приятно иметь у себя на переносном девайсе многие знания мира в виде одного файла, и я постоянно тестирую новые модели что выходят.
И самое главное, что уже через месяц, это будет работать еще быстрее, а с таким прогрессом, к моменту когда очки от Apple выйдут, уже можно будет себе построить полноценный переносной SciFi-в-шлеме, где мультимодальная нейронная модель работающая прямо на устройстве, будет и описывать текстом, что перед пользователем видит, и если нужно, давать советы. Все как в играх короче.
Для техногиков:
– Модель WizardLM-13B q4_0
– llama.cpp скомпилированная для поддержки Metal (
– Cool-retro-term для красивого терминала в ретро-стиле.
Запустил для теста модель на 13 миллиардов параметров, весом ~7 Гб, которая работает на GPU мака с простеньким ARM-процессором M1, 16 Гб RAM и 256 Гб жесткого диска.
Просто посмотрите на скорость этой «ChatGPT» дома которая работает без интернета. Это становится каким-то странным хобби, потому что мне просто приятно иметь у себя на переносном девайсе многие знания мира в виде одного файла, и я постоянно тестирую новые модели что выходят.
И самое главное, что уже через месяц, это будет работать еще быстрее, а с таким прогрессом, к моменту когда очки от Apple выйдут, уже можно будет себе построить полноценный переносной SciFi-в-шлеме, где мультимодальная нейронная модель работающая прямо на устройстве, будет и описывать текстом, что перед пользователем видит, и если нужно, давать советы. Все как в играх короче.
Для техногиков:
– Модель WizardLM-13B q4_0
– llama.cpp скомпилированная для поддержки Metal (
LLAMA_METAL=1 make -j и -ngl 1 во время запуска).– Cool-retro-term для красивого терминала в ретро-стиле.
Forwarded from partially unsupervised
Я уже недавно писал, что в эпоху LLM регулярки снова стали актуальным инструментом так называемого AI. Regex-in-the-loop как промежуточный вариант между "слепо доверимся черному ящику" и относительно дорогим human-in-the-loop.
И вот для тех, кто уже перешел с ChatGPT на что-то опенсорсное из зоопарка парнокопытных, уже появился враппер, который заставляет LLM-ку отвечать в заданном формате. Идея очень простая:
ReLLM filters non-matching tokens pre-generation. For each token, ReLLM tests every possible completion against a partial regex. For the potential completions that do not match the pattern, ReLLM masks the logits so that the language model does not generate them.
У меня нет бенчмарков, потому голословно выскажу предположение, что для ряда нехитрых продакшен задач такой нехитрый костыль сильно сократит отставание опенсорсных LLM от великого и могучего OpenAI.
И вот для тех, кто уже перешел с ChatGPT на что-то опенсорсное из зоопарка парнокопытных, уже появился враппер, который заставляет LLM-ку отвечать в заданном формате. Идея очень простая:
ReLLM filters non-matching tokens pre-generation. For each token, ReLLM tests every possible completion against a partial regex. For the potential completions that do not match the pattern, ReLLM masks the logits so that the language model does not generate them.
У меня нет бенчмарков, потому голословно выскажу предположение, что для ряда нехитрых продакшен задач такой нехитрый костыль сильно сократит отставание опенсорсных LLM от великого и могучего OpenAI.