ITипичные аспекты Артёма
384 subscribers
11 photos
3 videos
1 file
9 links
Robotics->python backend->computer vision->RnD team->GenAI->Lead универсал

И вот мы здесь
Download Telegram
proxy_selenium.py
10 KB
Понадобилось мне кое-что автоматизированно нагуглить, а случился внезапный закоп.

Не очень понимаю, почему и как, но в селениумный хром драйвер аномально сложно пропихнуть авторизованную проксю.
Оно жалуется, что не может захавать из-за авторизации
chrome_options.add_argument(f'--proxy-server=https://{proxy.username}:{proxy.password}@{proxy.ip}:{proxy.port}')


А если её пропихнуть без авторизации, то закономерно же отлетает уже сама прокся, запрашивая basicauth.
Не первое откопанное решение, но ставшее первым рабочим, оказалось с оригинальным применением гугл расширения: оно запускает только бэкграунд, вешает listeners на любые авторизационные окна и пытается их заполнять.

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

Раз появившись в предыдущей моей затее, google extensions начинают меня преследовать. Так и порождаются специализации.
3👍2🥰2
Да! Вот оно!
Я тайно молился чтобы идеальный момент использования этого мемаса настал

----
Перезалив. Когда-нибудь я перестану путать канал со своими сохраненками и удалять что не надо😅
😁8🤣4👍1🤯1
Финансовый Motivation и развивающие вектора

У меня есть ещё канал для своих - Артём и жизненные коллизии. И эти "жизненные коллизии" - идеальное определение идеям, ещё не разложенным в голове и не сформированным в чёткие суждения. Ща будет такая.
Мыслей у меня набирается на порядочный монолог, попробую сфокусировать.


Глобальный вопрос - как, кому и насколько распределять повышения зп в команде, когда есть такая возможность?
А ещё попутно ответить на следующие вопросы воображаемого члена команды:
- Как работает подъём зп?
- Почему мне подняли на X, а соседнему челу на 2X?
- Я получаю M, что мне нужно сделать чтобы получать N?
- Я не хочу играть в эти игры, можно мне просто работать как нормальный человек?

Сразу уточню, что вопрос не касается бигтеха с его устоявшимся жабогадюкингом: матрицами компетенций, ИПР, КПИ, независимыми аттестациями... что там ещё есть?
Часть из этого, важно отметить, может работать вполне хорошо и качественно даже на мой нетолерантный вкус. Но чаще являет собой необходимый на масштабе компромисс с неприятным послевкусием.

Ещё важный момент, сама такая возможность - иметь устойчивый процесс пересмотра зп - это успех и команды, и всего бизнеса. Ну и залог стабильного перфоманса со сроком целеполагания на годы. Такое присутствует далеко не всегда, но давайте пофантазируем, как может выглядеть процесс, на мой взгляд, здоровый и сравнительно этичный

От чего я оттолкнулся?
- Любые качественно-количественные KPI приводят к активному задрачиванию оных и отвлекают людей от профильной работы
- Методы сбора ОС и взаимооценки могут быть хорошо поставлены и поддерживаться где-то между размерами уровня "кто этот человек?" и "я не могу не похвалить моего братана Васю"
- Грейдирование требует, собственно, поставленного грейдирования + предоставления возможностей по этому грейдированию подниматься.
- Личностная оценка руководителем - субъективна, непрозрачна и хакается совместными походами в бар
- Стабильность и прогнозируемость процесса должна присутствовать чтобы и лид и сотруники могли заниматься своими делами, не устраивая подобие экзаменационной сессии в рандомные моменты времени
- Отсутствие перегрузки формальностями - хорошо задокументированная коммуникация, тем более по таким чувствительным вещам - вполне понятное и нужное зло, стоит следить за тем чтобы оно было в необходимых объёмах, не вылезало сверх меры.

По итогу таковых размышлений я породил следующий флоу (WIP):
1) Безусловная индексация зп на некоторый минимальный процент раз в год при выполнении рабочих обязанностей в рамках ожиданий.
Исключением здесь может быть ощутимый недоперформ и серия факапов.
Некоторая уверенность в завтрашнем дне и показатель здоровья вашего работодателя

2) Раз в полгода проводится совместная сессия между сотрудником и лидом/рабочей группой по повышке, где формируются достижения сотрудника на основе активности за эти полгода: рабочих задачах, объёму ответственности, участии в развитии команды/юнита.
Тут, разумеется, есть гадкий момент, что много нас, а апельсин один. И кто-то, несмотря на то, что он молодец, орёл и тащил - может остаться не удовлетворён. Не могу пока предложить ничего лучше открытости к диалогу и чудес дипломатии

3) Сотруднику предлагается вариант самостоятельно(или с помощью) выбрать и взять на себя цели, коррелирующие с целями команды/бизнеса/мотивацией в профессиональном развитии.

Важным моментом вижу то, что любая дополнительная нагрузка и обязательства - опциональны и в первую очередь средство более прогнозируемо управлять своим ростом. Должно быть в форме превентивного соглашения. Вместе с тем, иногда может быть сложно сказать, где ты будешь особенно молодец на полгода вперёд. Должна быть опция вкладываться в рабочие обязанности, органически иметь больше ответственности и возможностей проявиться.

Повышение, отличное от индексационного, в любом случае предполагает какой-то объём нерядовых активностей и мне ввиду своего собственного экспириенса видится важным дать возможность сотруднику выбирать, как и в какой форме он хочет этого достичь.
🔥6👍3🤔31
Эпоха шантажа LLMок уходит
а я остаюсь

https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5375404

Если верить вот этой папире, то все ухищрения с попытками дополнительно мотивировать модель сделать особенно хорошо - больше не актуальны.
Не то чтобы подобный промптинг и раньше входил в обязательные бест практики продакшн решений, но как некоторый забавный феномен в своё время был интересен. Регулярно сподвигал меня спонтанно пообещать модели миллион-другой долларов или описать, насколько это важно мне или моей больной тётушке.

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

Прогресс безжалостен. Будь я на месте главного обучатора LLM этого мира, оставил бы подход с шантажом как минимум пасхалкой
🔥11
Современные тренды на агентные системы непроизвольно флешбекают меня к боту из Counter Strike, которого кто-то назвал ToJIpa_AgenToB_SmiToB


Давненько сидит мечта сделать гуглёж-систему, которая бы в ответ на все разнообразие моих вопросов документально формировала обоснованные результаты.

Я видел много поделок уровня
спарсить гугл -> достать данные -> закинуть в LLM, оно как-нибудь пожрёт

Частенько им не хватает некоторой общей глубины контекста и хорошо такое ну максимум для сводки (что уже и реализовал тот же гугл). И параллельно я вижу работу Cursor над кодбазой, где он умудряется сделать общую выборку, общую выборку над первой выборкой, 4-5 погружений и вполне качественный существенный ответ. И это всё за минут 5 пассивно-заинтересованного пожирания поп-корна

К примеру, мой актуальный сиюминутный запрос "Найди мастеров, которые изготавливают ножи в Нови-Саде или Белграде, подготовь отчёт со ссылками на примеры ассортимента и цены на охотничьи ножи небольшого размера". Для меня эта история на пару часиков засесть-посравнивать у кого что есть. Я не уверен, но как будто бы достаточно агентная система, способная поставить себе DoD и валидировать его завершённость в процессе копания вполне могла бы что-то такое взять, сэкономить добрый часик моего времени

В связи с этим вопросы во вселенную:
1) Кто чем таким пользуется для продвинутого гугления?
2) Есть ли что-то достаточно готовое чтобы принести денежку и оно решит все мои проблемы или только делать самому?
И ещё я сильно страдаю, что не могу уследить за развитием всех интересных мне технологий. Вот вы знали, что pymongo получил свою асинхронную версию? И по непроверенным данным даже делает класический motor. Я узнал мельком пару недель назад. Во было бы круто, если бы кто-нибудь отслеживал подобные классные штуки из чейнджлогов и релизов, складывал в удобном мне виде.
Быстрый гуглёж показал, что есть пара людей, которые делают подобное на основе гитхаба, но оно немного сыро и не универсально
И ещёёё чтоб выжимку из актуальных обсуждений/issues проекта скидывал с какой-то периодичностью

В идеале, чтоб я аки mr President за чашечкой утреннего кофе узнавал ситуацию о новостях технического мира из заботливо подготовленных отчётиков. Эдакая индивидуально формируемая новостная лента
Как же приятно забыть о пандасе, какой-либо очистке данных и просто в два запроса получать красивые html отчётики с уже родными вырвиглазными палитрами.
Вот она, истинная эффективность. Я бы морально самоубился в процессе обработки аж 72 записей средствами, требующими самостоятельного написания кода
👏3
Немного практических вечерних изысканий!

Сразу по мотивам предыдущих постов я отправился почекать, как в случае коллектора чейнджлогов оно может выглядеть на деле.

Тем более что идея с индивидуальными инфопотоками/новостными лентами является моей вынашиваемой идеей на миллион ещё года с 23го. Это буквально вопиющее безобразие, когда в бытность дикого переизбытка контента самое умное, что фильтрует мне информацию - это лента гугла перед сном и лента ютуба по не самым сложным критериям

Итак, у меня есть классическая задача с поиском данных известного домена но неизвестной формы. <Знаем что искать, но не уверены, в каком виде>. Несложными махинациями уровня "большинство опенсорса берётся с гитхаба у которого понятная структура" и некоторыми трейтами универсальности её можно свести к задаче парсинга, но давайте попытаемся прикрутить сюда LLM. Без LLM не так продвинуто будет.

В идеальном случае я хочу вкидывать название технологий (или покемонов, чтобы ИИ не расслаблялся), а мне в ответ откидывалась выкладка с инфой о текущей версии технологии, ссылками, откуда можно достать информацию об апдейтах. Ну и заводилась таска на регулярный чек новых версий
👍3🤯1
Если исходить из идеи сделать дёшево и сердито, то можно накопать такие вещи:

- У OpenAI web api появилось подозрительно недавно и доступно по не менее подозрительно конским ценам
- Perplexity был почти хорош, но ошибся с актуальной версией на нескольких тестовых запросах что породило некоторые вопросы, как и в каком виде он хавает контекст из web поиска. У меня взыграла мания контроля и желание сделать всё на своём.
- https://serper.dev/ в процессе отметил, что вот эта штука для парсинга может являться интересным решением, но не удовлетворился, что оно упрощает только один запрос из цепочки.
- https://www.firecrawl.dev/playground вот эта штука выглядит перспективнее нежели просто кормить LLM текстовым содержанием страницы или, не дай бог, DOM. И в принципе выводит на любопытный вопрос: Как передавать модельке веб контент, если немалая часть его информативности ориентирована на человека и зашита в визуальной разметке.
Скрины и тулзы для скролла? Скрины + разметка для всего контента? Размеченный DOM как здесь?

Как итог: Накидал MCPшку, дарующую модельке возможность гуглить и возможность чекать контент сайта. Определённо стоит поиграться с форматом возвращаемой информации.

П.с. Не уверен, что кого-то в наши дни впечатлит web search tool calling сниппет, но могу причесать-выкинуть куда-нибудь в паблик
👍5🔥4🤔1🤯1
Кто как, а я в отпуске ( • ⩊ • )

Ничего невероятного и требующего моего срочного мнения в мире вроде не происходит, так что вкину сюда рандомную мысль и пойду дальше делать тортики, гулять по Сербии, проходить игрулечки - заниматься прочими традиционно отпускными вещами

Рандомная мысля:
Как получилось, что я не фулстек - почему бэк со всеми его архитектурками, конкурентностью, блокировками и ресурсиками - это моё, а вот учить модельки или визуал пилить - не моё?

С силой, подаренной мне курсором, волей-неволей начал сталкиваться с фронтендовскими штуками. Это до абсурдности забавно, насколько по разному ощущается процесс работы. В серверном коде специфика многих проблем и примерные пути их решения уровня "туда копать" +-ясны с беглого взгляда. Причём не всегда понимаешь,откуда, вроде даже опыта подобного не было. Назовём это ощущение Особой Бэкендерской Интуицией.

Когда дело доходит до проблем кода "напротив", буквально управления какой-нибудь шторкой или отправки пакетов с данными - в голове возникает неприятная пустота, внутренняя лампочка интуиции гаснет, а в ИИшку начинает лететь серия вопросов уровня "Проанализируй и объясни. / Как оно так работает? / Предложи способ реализовать...". А без ИИ бы оно вообще превращалось в мозголомные эксперименты длиною в часы.

Ответом на изначальный вопрос будет, собственно, присутствие ОБИ в практике. Без неё кодинг из хобби, продуктивно совмещённого с работой, превращается в пинание чего-то мучительно неповоротливого. Возможно память играет со мной дурную шутку, но сейчас мне кажется, ОБИ было со мной околовсегда, как некоторое природное свойство. Хотя воспоминания о бессонных ночах за ДАКАКОНОДОЛЖНОРАБОТАТЬТО могут говорить об обратном. Вполне допускаю, что в процессе упорного пинания фронтенда можно обрести и ОФИ до кучи, но мотивации относительно школьно-студенческих времён уже поубавилось
🔥7
Чем занимаются приличные люди в отпуске? 

Я занимался примерно этими самыми нормальными делами, пока не наступил сентябрь. В сентябре случилось осознание, что неплохо бы размяться-вспомнить, как буквы в питончике складываются.
Тут как раз случилось случайное общение с Валерой , шо там ещё люди придумали из новомодного и современного (а именно, SGR). Я уже был на низком старте чтобы по традиции засрать всё и злорадно аргументировать, что +- такой концепт работы с ризонингом LLMок гуляет ещё со времён начала популярности Structured Output. Ну может без шага натягивания совы выбора тулзов на глобус SO схемы. В этом и новизна, собственно.

Наш культурный спор дошёл до кода и примеров сниппетов, и вот тут возник нешуточно интересный вопрос - как себя будут вести экстрамелкие LLMки в SGR-специфически построенном флоу? Результаты опытных запусков прототипчика оказались любопытными, а значит к коллайдеру!

Ииии вот так я обнаружил себя на полшишечки в опенсорсе, третий день подряд переписывающим концептик Валеры(и ещё группы интересных людей) на нормальные код-рельсы и архитектуру. Иногда  кажется, что это у меня особая форма стокгольмского синдрома - ходить и переписывать порочные артефакты вайб-кода, причём чужие. Но ладно.

Было бы хорошо - меня бы не позвали ⓒ

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

https://github.com/vakovalskii/sgr-deep-research - сам репо
https://github.com/vakovalskii/sgr-deep-research/pull/10 - практический кейс перепиливания архитектуры, 1500+ 4500- в одном PR и меня за такое даже не послали!
🔥83👍2🥰1😁1🤩1
По мотивам обсуждения в чятиках

В копилку идей для петпроектов, которые я, разумеется, не реализую:

Собрать бенчмарк исключительно из мемасиков уровня 80тикилограммовой курицы или перепутанных кроссовок и отслеживать, как модели с ними разбираются. И шахматы. В бенче обязательно должны быть шахматы. Можно замерять количество ходов до того как что-то пойдёт не так
upd: как я мог забыть про кружку с запаянным верхом!

И можно ещё метрику по генерации кринжовых шуток добавить, но я не уверен, как её проверять
😁5💩3🤡3
Weeell, сегодня я буду сравнивать кодинг с эксгибиционизмом😊

Вчерашний вечер (и позавчерашний тоже. И часть сегодня тож) я опять развлекался тем, что вкидывал в опенсорс очень своеобразные вещи. Посмотреть на них можно тут
https://github.com/vakovalskii/sgr-deep-research/pull/18

Изначально план был неторопливо покрутить структурные изменения кода в пользу выделения kit_а из абстракций, над которыми можно удобнее пересобрать всех дальнейших агентов и бенчмарк.

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

Так за два дня родилась эта бомба +1300-700
Оно мне неиллюзорно нравится: в процессе рефакторинга испытываешь специфически одухотворëнные чувства, когда из изначального хаоса формируешь более стройные концепции.
У меня ещё с курсором как-то не задалось на этом проекте - все происходило лампово вручную


Теперь к опенсорсному эксгибиционизму. Чек-лист:
- Приличные люди таким не занимаются
- Делаешь это публично
- Ожидаешь, что все посмотрят
- При этом боишься общественного осуждения
- Тебе есть что показать миру
- Показываешь всю свою потенцию весь потенциал
- Если увлекаешься, приходит полиция кода и объясняет, что ты извращенец
- Находятся люди, ревьювящие и обсуждающие показанное
- Формируется комьюнити таких как ты
👍5🌚1