전체 글

·코딩테스트
🔗 2020 KAKAO RECRUITMENT - 가사검색 📌오늘의 학습 키워드Trie✨공부한 내용 본인의 언어로 정리하기삼중 for문으로 쓰고 당연히 효율성 테스트에서 걸릴 것을 예상했다.질문하기를 좀 뒤져봤는데 트라이(trie)라는 단어가 많이 떠서 공부했다. Trie는 문자열 검색 시 효율을 높이기 위해서 트리 구조를 사용하는 것으로 dictionary를 사용해 구현한다.   트라이를 적용해보려고 어제 공부한 다음에 자기 전에 생각해 보는데, 트리 구조를 사용하는 것까지는 이해를 했는데 단어의 길이를 어디서 알아내는지 모르겠었다. dictionary의 key 값으로 단어의 길이를 사용하며 단어의 길이로 1차 검색 이후 트리를 타고 내려간다. 📚오늘의 회고첫번째로는 삼중 for문을 사용해 해결하려..
·TIL
📚 Today's TODO✅ 스프링 토이 프로젝트 ✅ 코테 문제 어제꺼✅ 코테 문제 오늘꺼✅ 잔디 인증📡 새로 알게 된 내용어제 코테 문제가 벨만 포드 알고리즘 문제여서 한번 정리했다. 99클럽 코테 스터디 1일차 TIL + [백준 11657] 벨만 포드 알고리즘🔗 백준 11657  📌오늘의 학습 키워드벨만 포드 알고리즘✨공부한 내용 본인의 언어로 정리하기벨만 포드는 최적의 상황(다익스트라)를 포함하고 있다. 벨만 포드는 다익스트라와 달리 모든daily-programming-til.tistory.com 🗃️ 스프링 핵심 원리Bean scope: 특히 웹 스코프가 흥미로웠는데, http 요청이 들어오면 그 요청이 나갈때까지 생명주기를 갖는 다는 점이 흥미로웠다. (어떻게 아는겨)이것을 구현할 대 ..
·코딩테스트
🔗 백준 11657 타임머신 📌오늘의 학습 키워드벨만 포드 알고리즘✨공부한 내용 본인의 언어로 정리하기벨만 포드는 최적의 상황(다익스트라)를 포함하고 있다. 벨만 포드는 다익스트라와 달리 모든 간선을 각 순환마다 확인한다. 알고리즘모든 정점의 최단 거리를 sys.maxsize로 초기화 해줬다. for 정점의 수for 간선의 수현재와 다음 정점, 간선 비용을 갖고 만약 다음 정점을 현재 비용 + 간선 비용이 다음 정점의 비용보다 작을 경우 업데이트 해줬다. 💣 음수 순환이 없다면 모든 정점 - 1 를 순환 할 동안 최단 거리가 구해져야 한다. 하지만 음수 간선이 있을 경우 무제한으로 거리를 줄일 수 있으므로 만약 정점 수 만큼의 순환에서도 거리가 업데이트 된다면 그건 순환이 있다는 뜻!📚오늘의 회고..
·TIL
📚 Today's TODO✅ 스프링 핵심 원리 - 기본편 완강📡 새로 알게 된 내용🗃️ 풀스택 GPTvector store: Vector stores are databases that can efficiently store and retrieve embeddings. Embedding을 저장하고 반환하는 데이터베이스stuff document 에서 "STUFF"의 의미: It takes a list of documents, inserts them all into a prompt and passes that prompt to an LLM. document의 list를 가져와서 prompt에 넣고 llm에 pass 하는 것. stuff은 list of 를 뜻한다.🗃️ 스프링 핵심 원리@Autowired..
·TIL
📚 Today's TODO스프링 핵심 원리 - 기본편 섹션 8 까지📡 새로 알게 된 내용State를 가지게 되었을 때 발생할 수 있는 문제에 대해서 학습했다. 스프링 빈은 무상태로 짜는 것을 기본으로 하자.@Configuration - 스프링이 싱글톤을 유지시켜 주는 비밀!의 어노테이션프록시(Proxy) - 대리 라는 뜻으로 컴퓨터에서는 대리로 뭔가를 해주는 프로그램일 지칭할 때 쓰인다.CGLib는 프록시로 스프링에서 싱글톤이 유지되도록 관리한다.원래라면 DI 주입을 하기 위해서 AppConfig 파일에서 등록하고 설정해야하지만 파일의 규모가 커지면 그것이 힘들어 진다. 따라서 Component scan 이라는 것을 시행할 수 있다. Component scan은 @Autowired 를 사용해 comp..
·TIL
📚 Today's TODO스프링 핵심 원리 - 싱글톤까지📡 새로 알게 된 내용Intellij를 사용하면 의존성을 표현하는 그래프를 그려준다..! 이런식의 그래프도 그려준다. 정말 신기하군.[Intellij] iter 하면 for문 작성해주고, sout 하면 System.out.println을 작성해준다.스프링 빈을 조회할 때 상속이 되어 있는 경우, 부보 타입으로 조회하면 자식 타입도 함께 조회된다.자바 객체의 최고 부모인 Object 타입으로 조회하면, 모든 스프링 빈을 조회한다.BeanFactory와 ApplicationContext지금까지 DI를 직접 해주는 스프링 컨테이너에 대해서 배웠다. 그 중 BeanFactory는 스프링 컨테이너의 최상위 인터페이스다.ApplicationContext는 ..
·TIL
📚 Today's TODO✅ 풀스택 GPT 챌린지 오전에 끝내기 ✅  스프링 핵심 원리 - 기본편 : 섹션 1, 2, 3📡 새로 알게 된 내용🗃️ 풀스택 GPTLangchain 의 다양한 메모리들 ConversationBufferMemory: 아예 다 버퍼에 저장하는 방식ConversationBufferWindowMemory: 특정 용량만 저장하는 방식, 최근의 것들만 기억하게 됨.ConversationSummaryMemory: 내용을 요약해서 저장하는 방식, 초기에 짧은 대화에 대해서는 ConversationBufferMemory보다 성능이 안좋을 수 있지만 시간이 지나면 더 좋아짐.ConversationSummaryBufferMemory: 최근의 것들은 buffer에 그대로 저장하고 오래된 것들..
·TIL
📚 Today's TODO✅ 풀스택 GPT 챌린지 오전에 끝내기✅  스프링 입문 오후에 끝내기📡 새로 알게 된 내용🗃️ 파이토치 트랜스포머를 활용한 자연어 처리와 컴퓨터 비전 심층학습few-shotting : 이전에 LLM Prompt를 작성할 때 example를 한 2~3개 넣어 주는 방식을 사용했었는데 이게 few-shotting이었다. 따라서 few-shot prompt template는 example들을 제공해 주고 그에 따라 새로운 질문에 예시를 기반으로 답변하라는 뜻이다.PipelinePromptTemplate이라는 것을 배웠는데 현시점에서는 deprecated 되었다고 한다. 이것은 prompt들을 서로 합쳐주는 역할을 했는데, 이렇게 하여 추상화하지 않고 직접 pipeline에서 추가..
yolang
프로그래밍 기록장