일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- GPT
- jpa
- 로깅
- vue.js
- LLaMa
- kubernetes
- 생성형
- Python
- 생성형 AI
- fastapi
- 오픈시프트
- Docker
- fast api
- 컨설팅
- LeetCode
- k8s
- Machine Learning
- BFS
- 메세지큐
- 리트코드
- 컨설턴트
- POD
- vuejs
- 도커
- 쿠버네티스
- Redis
- 솔루션조사
- OpenShift
- 머신러닝
- SpringBoot
- Today
- Total
목록전체 글 (79)
수 많은 우문은 현답을 만든다

안녕하세요, 조영호입니다. 컨설팅 프로젝트에서는 초반에 고객을 인터뷰 하게됩니다. 그 이유는 컨설턴트들이 해당 산업의 정보와 업무를 정확히 이해하기 위해서입니다. 너무 많은 인원이 고객을 인터뷰 하지 않도록 주의해야하며 젠틀하고 영리한 방법으로 고객의 심리를 해치지 않으며 정보들을 이끌어내야 합니다. 인터뷰 전략 여러명이서 고객들을 앉혀놓고 어떤 말부터 해야할까? 다짜고짜 '이게 뭐예요? 이건 뭐죠?' 같은 직접적인 질문이나, 이거 잘못된거 아니냐 등의 감사하는 분위기는 상대방의 기분을 상하게 할 수 있다. 관계를 잘 이끌어내야 더 많은 정보들을 이끌어낼 수 있다. 사전에 구할 수 있는 업무자료나 소개자료 또는 인터넷 상에서 정보를 찾아 공부를 많이 하고 인터뷰에 임해야 한다. 충분히 해당 분야의 지식을..

안녕하세요, 조영호입니다. 저는 과거 프로젝트에서는 이 모든게 선정된 이후에 개발자로 투입이 되었었는데, 이번에는 컨설턴트들과 도메인 분석부터 참여하게 되었고 솔루션 조사를 맡게 되었습니다. 직접 솔루션 조사를 해보니 어떤 기준으로 어디서 어떻게 검색을 해야할지 막막했습니다. 관련하여 알게된 방법들과 유용한 팁들을 공유드리겠습니다. 보통 시스템 구축 프로젝트를 할때 모든 기능들을 인하우스 개발하기도 하지만, 일부 기능들을 담당할 수 있는 훌륭한 솔루션들이 시중에 많아 그런 솔루션들을 사용하면 비용대비 구축 일정을 줄일 수 있어 프로젝트의 효율성을 높일 수 있습니다. 예를들면, BI(Business Intelligence) 솔루션이나 메일, 알람, 메신저 전송 솔루션들이 있습니다. 자 이제 본격적인 방법을..

안녕하세요, 조영호입니다. 이번엔 요즘에 유행하는 python 3.6 이상 버전에서 사용가능한 백엔드 프레임워크인 fast api를 사용해보도록 하겠습니다. fast api는 Uvicorn ASGI Server 를 사용한다는 특징이 있다. Uvicorn lightweight(매우 가벼운) 비동기 웹 서버 fastapi framework만으로는 웹 개발을 할 수 없고, ASGI와 호환되는 웹 서버가 필요하다. ASGI Asynchronous Server Gateway Interface의 약자 비동기 web server를 의미함 - async / await 구문을 사용 자 이제 우리는, uvicorn 이라는 HTTP Request를 처리해줄 경량 비동기 웹서버를 설치하고 그 위에 fast api를 돌려보겠다..

커리어가 쌓일수록 드는 생각이 있다. '개발을 잘 하는것도 좋지만, 고객의 니즈를 정확하고 빠르게 파악하는 것도 중요하고 고객을 얼마나 잘 설득하냐가 정말 중요하구나' 라는 생각이 든다. 나의 이런 생각을 이야기하면 가끔씩 누군가는 진짜 개발자는 그런 고민을 하면 안된다고 말한다. 이런 고민을 하면 진정한 개발자가 아닌 것 일까? 그럼 진정한 개발자는 무엇인가? 나는 그런것들을 고민할 시간에 주변에서 고생하시는 컨설턴트들의 업무를 유심히 살펴보며 어깨너머로라도 배우기 위해 노력하고있다. 컨설턴트들은 발표자료나 요약자료 등의 PPT를 만들때 '장표'를 만든다고들 많이 표현한다. 그럼 이 잘표는 어떻게 만드는게 좋을까? 나는 최대한 짧고 간결하게 만드는게 좋다고 생각했지만 대부분의 컨설턴트들은 장표를 글과 ..

안녕하세요, 조영호입니다. 요즘 LLM이 핫하죠~ LLM을 가지고 생성형 AI 서비스를 개발해보고 있는데요, 관련하여 필요한 개념들을 우선 정리해 공유드리고자합니다. 하나씩 알아보겠습니다. LM (언어 모델, Language Model) 인간의 언어를 이해하고 생성하도록 훈련된 일종의 인공지능 모델로, 주어진 언어 내에서 패턴이나 구조, 관계를 학습하여 텍스트 번역과 같은 좁은 AI 작업에서 주로 활용됩니다. LLM (거대 언어 모델, Large Language Model) LLM은 사전에 대규모의 언어 데이터를 학습하여 문장 구조나 문법, 의미 등을 이해하고 생성할 수 있습니다. 예를 들어, 주어진 문맥에서 다음 단어를 예측하는 문제에서 LLM은 문장 내의 단어들 사이의 유사성과 문맥을 파악하여 다음 ..

어떤 웹 서비스든지 화면이 존재하며 우리는 그것을 Front-end라고 부릅니다. 오늘은 Front-end 프레임워크 중 하나인 Vue.js로 화면을 구성하는 방법을 알아보고자 합니다. Vue란? JavaScript 프레임워크로 이번 포스팅에서는 Vue 3를 다루겠습니다. Vue 컴포넌트는 옵션(Options) API와 컴포지션(Composition) API 두 가지 스타일로 작성할 수 있는데 옵션 스타일은 익숙하므로 Vue 3부터 나타난 컴포지션 방식으로 작성해보도록 하겠습니다. Node.js 설치 https://nodejs.org/en/download/ 설치 후 커맨드창을 열고 npm -v 로 설치를 확인합니다. Vue 설치 npm init vue@latest 플러그인 설치 저는 위에서 ESLint,..

선형(linear), 비선형(non linear) 선형 선형회귀란, 주어진 데이터 집합에 대해 종속변수와 n개의 독립변수 사이의 선형 관계를 모델링 하는 것을 말한다. 수식으로 예를들면 y=ax+b (y: 종속변수, x: 독립변수) 처럼 표현할 수 있고 독립변수는 input, 종속변수는 output의 개념으로 생각할 수 있다. 즉 선형회귀는 집합에서 최적의 선을 찾는게 목표이며 독립변수의 계수들이 선형관계에 있는것을 선형이라 한다. 선형회귀는 위 수식처럼 y=ax+b 처럼 표현할 수 있고 b는 절편(=bias), 그리고 a는 기울기 또는 가중치(wieght)라고 한다. x는 파라미터 값으로 직접적인 컨트롤을 할 수 없으며 우리가 궁극적으로 구하려는건 a와 b의 값을 구해서 y(=price, 확률 등)을 ..

왜 머신러닝이 필요할까? 머신 러닝은 경험으로부터 학습해나가는 알고리즘이다. 즉 더 많은 경험을 축적함에 따라 성능이 향상된다고 말할 수 있다. 내가 개발해놓은 소프트웨어가 아무리 성능이 좋다해도, 경험을 쌓거나 스스로 학습할 수는 없기에 머신러닝은 소프트웨어 개발과 대조적인 측면이 있다. 그러나 머신러닝은 항상 동일한 비즈니스 로직을 수행하지 않는다는 관점도 생각해볼 수 있다. 핵심 구성 요소 데이터 올바른 데이터가 있어야 올바른 결과가 나온다. * 스칼라 : 크기만 있고 방향을 가지지 않는 양 (오늘은 영하 10도) * 벡터 : 크기와 방향을 가지는 (어디로 얼마만큼 가야 하나요?) 모델 한 유형의 데이터를 입력으로 예측을 출력하는 계산적 장치 목적 함수(Objective Functions) 모델이 ..
아나그램이란? 아나그램이란 한 단어의 철자를 분해해 다른 단어, 혹은 다른 문장으로 바꾸는 놀이 약간 수학적인 요소가 있어서 어렵지만 재미있는 훈련이 될 것이다. 문제: https://www.hackerrank.com/challenges/sherlock-and-anagrams/problem 설계: 1. 애너그램 처럼 실제로 문자를 뒤집고 하려면 복잡하다. 어떻게 단순화 할 수 있을까? -> 문자열 정렬 2. 문자열에 대한 모든 케이스를 조사해야되는데 삼중 포문이 필요하려나? -> 이중 포문만 있어도 된다 ㄴ 역할 1: 문자열 시작위치를 한칸씩 이동 ㄴ 역할 2: 자르는 범위를 한칸씩 또 늘려야한다. 3. 반복되는 문자가 나오면 count 를 증가시킨다. 4. 같은 문자가 여러번 반복되면 시그마 합을 구해..
허프만 코딩 : 데이터 문자의 등장 비도수에 따라서 다른 길이의 부호화를 사용하는 알고리즘 문제 링크 : Tree: Huffman Decoding | HackerRank 풀이 : 더보기 """class Node: def __init__(self, freq,data): self.freq= freq self.data=data self.left = None self.right = None """ # Enter your code here. Read input from STDIN. Print output to STDOUT def decodeHuff(root, s): //여기서 핵심은, 단순 재귀로 짜면 안되고, leaf에서 다시 루트로 돌아가야한다는것. //즉 두 스텝이건 세 스텝이건 원복해야하며 순차적 원복이 ..