Дневник разработчицы
406 subscribers
111 photos
9 videos
14 files
145 links
Откровенные истории о проектах, работе, учебе и открытиях в мире программирования. Присоединяйтесь и вдохновляйтесь вместе со мной!
Download Telegram
#Работа #AWS
Иногда становится стыдно за саму себя.

Сижу, решаю проблему того, что никак не получается подгрузить доступы к реджестри для запуска контейнера внутри инстанса. Конфигурация вся на терраформе. Логи из инстанса при запуске почему-то не выводятся нигде, хотя пишет название стрима, но такого стрима нет.
Сначала было так g5 запускается норм, а g6 нет. По ходу долгих исследований поняла, что дело в том, что в g6 обязательно надо использовать токен для получения метаданных. Я вроде исправила скрипт, чтобы получать этот токен, но все еще что-то не работает.

Короче, вожусь уже много времени, танцы с бубном не помогают.

А потом смотрю внимательно на скрипт, который я скопировала у коллег и использую почти как есть, даже не думая о наборе команд внутри. Смотрю на него внимательно и понимаю, что из метаданных берется просто регион. Регион, который можно просто передать через переменную шаблона, потому что у меня он не динамический. Фак! Я столько времени потратила впустую вместо того, чтобы разобраться с тем, что можно было просто скипнуть!

было:


export METADATA_AWS_TOKEN=$(curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600")
/usr/bin/aws configure set region $(curl -H "X-aws-ec2-metadata-token: $METADATA_AWS_TOKEN" http://169.254.169.254/latest/meta-data/placement/region)

стало:

/usr/bin/aws configure set region ${aws_region}


Но все еще не понимаю почему не сработала загрузка токена.
🔥62
#UOL #Учеба
Получила оценки за последние мидтермы, готовлюсь к экзаменам и делаю финальную работу, в которой надо фото с веб-камеры разложить по разным цветовым фильтрам. Я что-то подобное делала на Си в рамках заданий на cs50, где надо было резервировать память и менять цвета, считывая бинарный файл и заменяя байты. Поэтому заменить просто значения в RGB с помощью js-либы кажется тривиальной задачей.

Удивилась, что получила аж 90 баллов за работу с использованием NLTK, но по факту я в нее действительно вложилась больше всего. Порадовалась, что по новому модулю получила зачет и даже в целом нормальные 62 балла. Там надо было готовить отчет и презентацию, чисто гуманитарная дичь, плюс предмет новый, я боялась, что там все может пойти не так. Да, и если честно, то я потратила на него меньше всего усилий.

Зарегалась на следующий семестр, там уже будут 3 предмета последнего уровня по специализации ML. Должно быть интересно. Один из предметов Intelligent Signal Processing, смотрю, что про него пишут, что он довольно объемный и сложный. Надеюсь, что мне с моим опытом и знаниями не будет так уж больно. Надеюсь.
Весь список на следующий семестр:
- Databases and Advanced Data Techniques
- Natural Language Processing
- Intelligent Signal Processing

Но пока готовлюсь к экзаменам. Плюс еще я все еще не сделала два предмета, которые хочу закрыть через IBM курсы. Надо будет между сессиями заняться ими плотно и добить их уже.
🔥10👍21
#Техника
Купила себе новый макбук. Не потому что старый был плох, просто надоело постоянно поджиматься по оперативной памяти.
Было: MacBook Pro M1 16 Gb, 16 дюймов.
Стало: MacBook Pro M4 Max 128 Gb, 16 дюймов.

Вчера занималась переносом данных. Сначала подключила оба мака по проводу от внешнего жесткого диска самсунг, но он оказался не так уж и хорош. Ради эксперимента прокинула провод от подставки и он оказался тандерболтом, перенос автоматически переключился на него и завис… Пришлось запускать все заново. При этом проекты я заранее перекидывала на внешний жесткий диск и это заняло несколько часов.
Оценка переноса на старте была на 60 часов, было очень смешно. Потом исправилось на 4 часа. Через 4 часа оставалось процентов 10 и писало 15 минут, но эти 15 минут висели еще часа 3.

При переносе я выбрала почти все, кроме загадочного other. В целом перенос прошел довольно неплохо, пришлось только brew переустановить и его зависимости. Что интересно, даже история ввода команд сохранилась.

Попробовала новую опенсорс модельку от open ai на новой машинке, отвечает очень быстро. Прям скорость вжух-вжух.

За полдня моей возни оперативки использовано почти 50 гигов. Я не понимаю, если честно куда? При том же сетапе чисто при запуске ушло сразу 30+. Куда?

Тест киберпанка показал средние настройки на примерно 60 fps, но играть еще не пробовала, просто тест прогнала.

Еще запустила ради интереса рабочий скрипт на NAMD, там скорость работы при ограничении на 8 CPU выросла почти в два раза по сравнению со старой машиной.

Пока не пробовала запускать прекоммит, но думаю, что он должен летать.

А так выглядит и ощущается как и прошлый комп, только чуть светлее.
🔥932🤩1
#Работа
Продолжаю заниматься симуляциями для химиков.

Последнее время пытаюсь добиться нормальной скорости симуляции. У меня при запуске выходила скорость в 10 раз медленнее, чем в запусках на другом кластере. Я никак не могла понять в чем проблема. Пробовала разные инстансы, разные настройки запуска, настройки ресурсов и тп. И вот в очередной подход, поняла, что я тупо использую неправильную сборку. Я выбрала не тот билд, рассчитывая на кластер, а мне надо было брать просто CUDA сборку.

Наконец, симуляция начала использовать GPU вместо CPU и все полетело. 1 GPU и 8 CPU (оценка - 7 дней) сработали лучше, чем 64 CPU (оценка 91 день).

А дошло до меня, что я что-то делаю не так только потому, что я решила поискать, а как GPU загружается при запуске. Ииии… обнаружила, что на моем маке она никак не загружается. Оказалось, что сборка под apple silicon не использует GPU. Потом начала смотреть, а что с Линуксом и тут меня осенило.

Блин, надо ж было так продолбаться… Хорошо, что нашла сама проблему…
👍5🤔1
#Жизнь #Сингапур
Я все время удивлялась тому, какие тут воспитанные дети. Очень тихие, никто не бесится. Сидишь в кафе, там почти за каждым столом по ребенку разных возрастов, а то и по несколько, но при этом тихо и спокойно.

Так вот, довольно известный факт, что в Сингапуре применяются телесные наказания. Но кроме того, они оказывается разрешены и в школе. А на местном маркетплейсе Лазада продают специальные трости для наказания детей. https://www.lazada.sg/products/pdp-i2439777605-s14446444099.html
Отзывы…
😱5🔥4🤬2
#Жизнь
Впервые нашла у себя седые волосы. Они незаметны и в начале мне даже показалось, что это просто такой блеск. Докопалась и таки выдернула один такой, рассмотрела и поняла, что он и правда седой.

Я понимаю, что я не выгляжу как в 20, я уже пережила всякие мысли типа, что после 30 жизни нет и тп. Я понимаю, что я уже ближе к 40, чем к 30. Но все ж. Как-то грустно немного.

Я все еще чувствую себя девчонкой, а родители в этом возрасте переехали из Архангельска в Великие Луки с двумя детьми и собакой. А я в Сингапуре, работаю и учусь в универе, еще 2 сессии впереди. А потом еще и магистратура, наверное. И вообще ощущаю, будто все только начинается. Какие к черту седые волосы?
7👍3😁3😢3
#Учеба #UOL
Отправила очередной проект по учебе. У меня он так тяжело шел, что я несколько выходных много прокрастинировала и мало делала, в итоге пришлось сидеть до 5 утра в день дедлайна, чтобы закончить его.

Самое противное в этом проекте - это фреймворк, который надо использовать p5.js без npm, сборщиков и тп. Просто куча функций из глобальной области видимости с такими названиями как text(), image() и тп. Попробуй случайно не переопредели это.

Помимо этого, ты не можешь использовать обычный html и верстку, это все кастомное. Сиди с канвасом, считай x, y, добавляй отступы, все сам. Нельзя просто изображение с камеры запихнуть в html, надо делать это в глобальном канвасе. Все их примеры использования далеки от нормального программирования. При этом в требованиях к работе - вы должны писать профессиональный код и тп. Блин, чуваки, ваш подход устарел и в корне непрофессиональный, о чем вы вообще?

Ладно, это просто универ, учебная работа. Хотя сам проект мог бы быть довольно интересным. Как я уже писала, я подобное делала в cs50 и там было гораздо круче.
https://cs50.harvard.edu/x/psets/4/filter/more/
🔥62👏2
#Жизнь Рабочее место.
2🔥268👍2
Week_2_Written_communication_skills,_Part_2_Assertive_communication.md
10.3 KB
#UOL #Учеба Ничего себе, в новом модуле универа прям софт-скиллам учат, про STARR рассказывают и тп.
🔥31🤩1
#Учеба
Прохожу вот этот курс от IBM, чтобы зачли в универе как один из модулей https://www.coursera.org/professional-certificates/ibm-data-science
Делала курсовую по визуализации, впечатлилась от фреймворка dash https://dash.plotly.com/, он нужен для того, чтобы датасаентисты клепали дашборды. Под капотом у него фласк, реакт и куча всякого замешано. Можно писать html на питоне, создавать шаблоны для динамических страничек. Прикол в том, что он умеет подгружать данные без перезагрузки страницы при изменении фильтров, но весь UI ты спокойно пишешь на питоне. Найс!
Код на курсе, конечно, был говно с точки зрения структуры, но я если честно ради фана потыкала бы в этого зверя еще.
Еще забавный момент, что работу проверяло с помощью AI. LLM изи поставила мне максимальный балл, что очень порадовало.
Продолжаю проходить этот курс, сейчас на 9 модуле из 12. Хех, чуток осталось.

UPD. На сколько же любой курс проще, чем курс по ML от Яндекс и МФТИ! Я прохожу текущий курс и все еще вспоминаю попа-боль, когда проходила их курс, который я так и не прошла до конца, к сожалению.
🔥101
#Работа

https://www.ks.uiuc.edu/Research/namd/mailing_list/namd-l.2020-2021/0138.html
Когда вместо стаковерфлоу или чатгпт, надо читать чужие переписки, чтобы решить проблему.

Короче, суть проблемы. Вот есть программа NAMD, написанная на С/С++. Для нее сделали несколько сборок - для линукса, для кластера, для запуска с CUDA. У второй версии нет поддержки ARM и макоси, а вот в третьей версии есть. Я использую третью версию, но на сервере мы используем вторую, потому что она вроде как считает точнее, чем третья.
Я локально проверила, что у меня на машине работает. Залила на сервер, у меня все отработало успешно, но чет файл с результатами пустой. Я открываю логи, а там в info потоке, даже не в потоке ошибок вижу следующее:

FATAL ERROR: Pair interaction calculation is not supported in CUDA version

FATAL!!! фатал, такой фатал, но скрипт выполнился успешно.

Они не поддерживают некоторые фичи в версии с CUDA. Что ж… ААААААААААААААА!
Придется загружать две сборки с кудо и без кудо, чтобы жонглировать ими. Как же горит.
🔥4
#Tools
Когда микрофон уже пришел, а вот лапа для него еще нет.
На фото второй стакан из-под кофе под эти нужды, в первом я неудачно вырезала дырку и он сломался.
Забавно, что громкость голоса стала лучше после того как я поменяла usb-c, по которому был подключен усилитель к ноутбуку.
🔥5👍1
#Работа #LLM
Решила ввести новый тэг, потому что #ChatGPT уже одна из, а не единственная llm модель. Так вот.

На работе пришли с запросом, что надо сделать что-то с llm и прозвучало слово MCP. Нам рассказали, что сверху спустили запрос, что надо сделать хоть какой-то POC, а потом внедрять это.

В целом идея мне очень нравится, в голове сложилась сразу картинка как это могло быть организовано в корпорации, как это должно быть централизовано, но все оказалось прозаичнее. Никакой инфраструктуры и процессов под это еще нет. Большая корпа к этому вопросу подошла как - кто-нибудь, сделайте что-нибудь. На самом деле я даже удивилась этому, потому что в компании очень много разного ML, работы с данными и тп. В целом и в сторону llm есть уже корпоративные подписки на копайлот и чатгпт.

Нам дали доступ еще к инструменту, который позволяет внутри задеплоить локально модель с https://huggingface.co, cобрать своего агента в очень простом редакторе, похожем на https://flowiseai.com/, ну и задеплоить свое приложение. Я посмотрела на это чудо, нашла опубликованную модель и показала руководителю затраченные ресурсы, где на модель выставлено 50 гигабайт оперативки. Пояснила ему, что будет очень дорого, если каждая команда будет под свою задачу публиковать свою модель. Плюс, что было бы еще неплохо иметь возможность получить токен для использования корпоративной большой модели.

Как я сама это видела? Я думала, что у компании будет центральный агент с возможностью подключения разных MCP и добавления их во внутренний маркетплейс. Я думала, что они сделают понятный стандартный процесс для разработки и публикации этих MCP, а также возможно для создания своих агентов. Но пока такого нет. Не уверена, что кто-то этим занимается. На предложенной платформе я увидела несколько навайбкоженных демок индусами из поддержки скорее всего.

На этой неделе будет встреча с гуру AI в компании. Даже интересно, что это будет.

Я пока попробовала локально запустить mcp на базе сваггера нашей основной платформы. Я использовала awslabs.openapi-mcp-server. Оно, конечно, запустилось, но с ошибками и там по идее надо думать на счет промптов и разделения инструментов.

В целом, задача интересная, особенно тем, что в корпе пока нет ничего и все только начинается. Даже жаль, что мы сами ничего не предлагали раньше.
5
#Учеба #UOL
Как же иногда грустно находить такие артефакты в лекционных материалах университета. Я не обращаю внимание на разные мелочи и проблемы, но вот такие вещи - прям режут глаз.
⁃ неиспользуемая переменная
⁃ использование built in названия для параметра
⁃ использование списка как дефолтного значения для аттрибута функции.
Как так то?(
😁7👍2
#Учеба #UOL
https://coursera.org/share/d880563940415bb7815b3393776a273e
Наконец добила один из двух сертификатов, которые нужны взамен модулям в универе. Просто ура. Про курс ничего не скажу. Меня не особо впечатлил, но и не разочаровал. Нормальный курс.

Начала второй https://www.coursera.org/professional-certificates/ai-engineer#courses
Не верится, что в универе осталось всего 2 сессии. Учусь последнее время просто на каком-то автомате - надо, значит надо. :)
🔥8👍3❤‍🔥2