tensorflow + python 3.13 + 3.12 + 3.11 +3.10
Google ML Sample을 풀어보려고 jupyter notebook에 Tensor를 설치하려고 하고 있었다.
- System에 설치된 Python 버전은 3.13
- tensorflow는 설치가 되었는데, tensorflow_hub를 살펴보니 3.12만 있다.
- 거기다가 tensorflow_text는 3.10만 있다.
- uv를 살펴보다 보니, python version을 지정해서 설치 할 수 있다.
- .python-version 파일의 버전을 수정 한 상태로 venv를 생성하면, 알아서 잘 만들어 준다.
uv python list
uv python install ***특정버전
- jupyter를 3.10에서 실행하는 방법에 대해 잠시 고민했는데, 그냥 venv환경에 jupyter를 add하고 실행하면 자연스럽다
훌륭하다.
AI. 단어들 그리고 용어들
손실함수
Transformer 모델에서 손실 함수를 사용하는 이유는 모델이 학습하는 동안 예측과 실제 값 간의 차이를 정량적으로 측정하고, 이를 바탕으로 모델을 최적화하기 위해서입니다.
Machine learning vs. Deep learning
assets/images/2025-03-18-01-01.png
Transfer model은 Deep learning model인가?
A Transformer model is a type of deep learning model designed for sequence-to-sequence tasks such as natural language processing (NLP). It was introduced in the paper “Attention Is All You Need” by Vaswani et al. (2017) and has since become the foundation for many state-of-the-art models like BERT, GPT, and T5.
tooljet + appsmith
![]() |
|---|
| tooljet과 appsmith의 메모리 사용량 |
streamlit으로 만들고있는 private quee의 관리자 페이지를 만들다가.. 이건 아닌거 같아 한눈 판 것이 NoCode Tool로 튀었다.
먼저 retool에서 화면을 하나 만들어 보고, 느리고 안정성이 부족해서 그 self-host로 찾아보다 tooljet을 가지고 열심히 세팅을 하다가, @react-oauth/google를 설치하는 부분에서 좌절하고, appsmith를 설치 해 보는데, 이 녀석 대단하다.
- 설치가 단순하다. (tooljet은 tooljet db를 exclude하는 기능을 제공하기 때문에, 우수하지만 오히려 복잡 해 질 여지를 준다.)
- 화면 정리 정돈이 잘 되어있다
- 구현은 안해봤기에 얼마나 안정적인지는 모르겠다.
그런데 저 메모리 사용량은 좀 곤란하다.
Prompt의 종류
Google Cloud Skills Boost를 따라 해 보고 있다.
Prompt를 진행하다 보니 단어가 몇 가지 보인다.
- Zero-shot prompt
- One-shot prompt
- Few-shot prompt
Podman + host.containers.internal
MPD Client에서 실제 음악 재생용으로 올려둔 MPD container를 연결 할 수 없는 현상이 벌어진다.
이게 원래 Docker에서 잘되던 것이고, (기억으로는) Podman에 올렸을 때도 잘되었던거 같은데 말이다.
이리저리 gpt에 질문을 해 봐야 별로 소득이 없다.
결국 “10.89.2.1"이라는 (잘 알려진) host ip로 바꾸고 만다.
Warp-Terminal + LLM + Podman
![]() |
|---|
| WARP를 통해서 Podman container를 기동하는 모습 |
어제 Warp-Terminal을 local에 설치하고 시험 해 보면서 LLM이 local에 대한 권한을 가진다는 것이 얼마나 대단한 영향력을 줄 수 있는지 놀라고 있었다.
오늘은 내침김에 VSCode에 Google Gemini Code Assistant 까지 설치 해 보면서, 단순하게 Web Browser에서 질문하고 검색하는 수준이 아닌 local command를 대체하는 방향성에 대해서 테스트 해 보고 있다.
위 스크린 샷에서 Warp-Terminal은 claude 3.7을 사용해서 podman container 전체를 살리는 명령으로 start -a를 시도해 보지만, 그것이 잘못된 방법인 것읋 알아차리고 목록을 구해서 하나씩 파라미터로 던지는 활동을 하고 있다.
SELinux + systemctl
Feb 21 16:05:56 change53 systemd[1077931]: toy_redis_to_postgres.service: Failed to locate executable /usr/local/toy_redis_to_posgres/toy_redis_to_postgres: Permission denied
Feb 21 16:05:56 change53 systemd[1077931]: toy_redis_to_postgres.service: Failed at step EXEC spawning /usr/local/toy_redis_to_posgres/toy_redis_to_postgres: Permission denied
Ubuntu에 잘 배포했던 녀석을 Rocky에 다시 배포 할 일이 있어서 서비스를 등록하고 start를 시키는데 permission error가 난다.
무언가 가물가물 기억은 잘 안 나는데, 응용프로그램을 등록 해 줬었던거 같다.
한참을 해메다 보니 gpt가 대충 알려줘서 해결한다.
# 상태체크
sudo ausearch -m AVC,USER_AVC -ts recent
# 일시적으로 강제 비활성화
sudo setenforce 0
sudo systemctl restart myapp
# SELinux 쩡책 수정
sudo chcon -t bin_t /usr/local/bin/myapp
서비스가 정상 작동하는 것을 보고 SELinux관련 임시 설정을 복원하는등 작업을 했더니..
GLIBC_2.34 not found
xx@yy:/usr/local/toy_redis_to_posgres$ ./toy_redis_to_postgres
./toy_redis_to_postgres: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./toy_redis_to_postgres)
./toy_redis_to_postgres: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./toy_redis_to_postgres)
Redis data를 Postgres로 복제하는 프로그램을 하나 만들어 설치를 하는데, glibc관련 오류를 보인다.
막연하게 goLang을 컴파일되는 python이라고 생각했더니, 그건 또 아닌거 같다.
glibc를 설치하려다 생각 해 보니. 그냥 goLang을 설치하고 build하는 것이 더 자연스러워 보인다.
goLang 1.23 > 1.22 > 1.24
goLang에서 posgres에 insert 할 일이 있어서 ORM을 알아보다 google의 ent를 사용 해 보기로 한다.
홈페이지 엤는 내용을 따라 하다보니, 영 이상한 오류를 보이며 안되서 구글링을 하다보니 1.22까지만 지원한다는 것을 보고 버전을 내려봐도 영 해결 될 가능성이 안보이다.
거기다… 다른 환경이 꼬이는지 1.23으로 upgrade해야 한다는 메시지를 VSCode등 여기저기서 나온다.
goLang에 가보니 최신 버전은 1.24이다.
동일한 방식으로 update하고 다시 ent를 따라 해 보는데. 정상적으로 잘된다.
결국 파이썬에서 겪었던 버전간의 여러 문제들은 goLang에도 여전히 존재한다는 느낌이다.
prql은 어떤 사람들에게 적합할까?
![]() |
|---|
| 간단한 prql과 생성된 sql |
prql을 살펴보고 있다.
사실 이 녀석은 나름 합리적이라고 주장하는 문법으로 좋은 결과를 제공 할 것으로 예상되는 SQL을 생성하는 것이 그 주요 기능이다.
대한민국의 금융권 SI하는 많은 개발자들은 아주 긴 query를 짤 수 있다는 것에 대단한 자부심을 가지고 있는 경우도 있는데 말이다.
생성된 SQL을 보면. 튜너가 과연 튜닝을 해 주고 싶을까 싶은 생각이 드는 것은.
흔히 금융권 차세대에 이 녀석으로 어떻게 적용 해 볼 생각은 안해도 되겠다 싶다.


