현재 71~87 페이지 공부 중인데... 정확히 어느 위치에 어떻게 넣어야 할지 감도 안오네요. 결국 AI 도움을 받아서 쓰긴 썼는데... (결과 화면은 봄.. 근데 책 코드와 조금씩 다르네요.) 코드 입력하는 부분이 너무 헷갈리는데 중간 과정에 대한 소스가 따로 있을까요? 책에 나온 깃허브에는 완성본만 나와서 이게 맞는지 모르겠네요. 현재 2장 진행하면서 2.3까지 책의 내용대로 진행해봤는데 너무 진행이 안되서 글 남깁니다.
킬구형 1장 - 작전3에서 아래와 같이 얘기한 부분에 대해 궁금한게 있어. '리스너는 감시와 통제만 담당한다. 실제 시스템 제거 로직( 비즈니스 로직 )은 분리하라. 리스너가 너무 많은 일을 하면 유지보수가 어려워지고 시스템 동작을 파악하기 힘들어진다' 청크 기반 배치 잡이라고 하고 A라는 테이블에서 데이터를 읽어와서 B라는 테이블에 데이터를 삽입하는데 B 테이블에 데이터가 없다면 삽입, 있다면 수정하는 로직이 있어. 이 과정들이 모두 끝나고 마지막으로 B 테이블에 수정 날짜 컬럼이 잡 시작 시간보다 이르다면 A 테이블에 데이터가 없으므로 B 테이블에서 이러한 데이터들을 삭제하려는 로직을 넣는다고 했을 때 아래 궁금증들이 있어. 1. 위 얘기를 토대로 생각해보면 삭제 로직은 청크 기반 스텝 이후 태스크릿과 같은 다음 스텝으로 넣는게 좋은 것 같은데, 실무에서는 해당 잡 전용 리스너를 하나 추가로 만들어서 afterJob 메서드에 배치 상태가 COMPLETED인 경우에 삭제 로직을 실행하도록 하는 방식은 지양하는 편인거야? 전용 리스너를 만들어서 사용하는 경우도 있어? 만약 리스너에 삭제 로직을 넣는다고 했을 때 리스너에서 데이터 삭제 과정 중 오류가 발생한 경우에는 잡이 실패 상태로 종료되는거지? 2번과 같은 맥락인데 리스너에 삭제 로직을 넣는 경우 트랜잭션이 필요할텐데 리스너는 트랜잭션 범위가 어떻게 돼? 스텝에서는 청크 범위, 태스크릿의 반복 범위라고 본 걸로 기억하는데 리스너는 트랜잭션 설정 자체가 안되는건지 리스너 범위 내부에서만 설정되는건지 궁금해.
학습 관련 질문이 있으시면, 상세하게 남겨주세요. 문제가 발생한 부분의 코드를 함께 올려주세요. 수업 영상 몇 분/초 구간인지 알려주세요. 10분 56초 부분에서 prompt 작성코드를 보면 text형식으로 작성되어있고 ChatPromptTemplate을 사용하고 있는데 지난 강의에서는 ChatPromptTemplate 은 message list형식으로 작성한다고 하셨었습니다. ChatPromptTemplate은 그냥 PromptTemplate과 달리 from_template을 사용하면 일반 text 형식 prompt도 처리가 가능한 구조인건가요? 그런거라면 굳이 PromptTemplate을 사용해야하는 이유가 있나요? ChatModel 이 아니라 LLM 일 경우는 ChatPromptTemplate.from_template으로 작성한 prompt는 동작하지 않는 건가요? RAG는 LLM이 아니라 ChatModel을 사용해야하는 이유가 뭔가요? LLM과 ChatModel의 차이를 multi-turn 처리 가능 여부로 보면 될까요?
1. 현재 학습 진도 2-9 2. 어려움을 겪는 부분 window 11 에서 k6 1.3.0 버전을 사용 중 이고 set K6_WEB_DASHBOARD=true k6 run k6-scripts/k6-test.js 로 명령어를 쳐도 테스트 자체는 실행이 되지만 대쉬보드가 나오지 않습니다 3. 시도해보신 내용 처음엔 버전 문젠가 해서 최신 버전으로 수정 했고 5665 포트도 사용 중 은 아닌 것 을 확인 이 외에 체크를 해야 할 것이 있는지 모르겠습니다.
작업형 2 머신러닝 모의2번 문제에서 labelencoder할때, 명령어가 le = LabelEncoder()로 지정하고 아래와 같이 transform할때 fit을 넣고 다음에는 안넣는데, 추측하기로는 train 데이터에서 object 유니크 수를 파악하고 이에 맞는 것으로 변형하기 때문에 fit을 쓴것 같습니다. 그렇다면 trian이랑 test랑 유니크 수가 다르다고 하면 아래와 같이 쓰면 안되지 않나요? 아니면 알아서 잘 수치화가 진행되는걸까요? 일전에 강의에서는 train과 test에서 유니크 수가 다르면, 두 데이터를 상하로 합쳐서 같이 적용하고 나눈다고 들었어서 여쭤봅니다. train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col])
작업형 2유형 문제 궁금한게 있습니다. 수치형 변수 스케일링을 하셨는데, 시험에서도 저 코드를 꼭 써야 하나요? 저거를 임의로 판단을 해서 하는건가요? (마지막에 성능 지표로 확인해서 임의 판단인지) 아니면 시험장에서도 문제에서 명시가 되어있는걸까요? 혹여나, 문제에서 명시 되어 있지 않는데 굳이 저걸 했다가 감점을 받지 않나 해서요 저걸로 가점이 된다면, 항상 모든 문제에 수치형 변수 스케일링을 추가 해줘야 하는거 아닌가요? 왜 문제 마다 수치형 스케일링을 해주는 경우도 있고 아닌 경우도 있고.... 이해가 안갑니다 그리고 RobustScaler를 적용 하셨는데, MinMaxScaler로 해도 되나요? (다른 수치형 스케일링을 써도 되는지 여쭤봅니다) 그리고 하이퍼 파라미터도 문제에 명시 안되어있는데, 저것도 임의 판단해서 쓰는건지 궁금하네요. 시험 문제에는 저렇게 간략하게 나오는건가요? 문제에서 딱.. 하이퍼파라미터 적용.. 수치형 스케일링 적용... 이렇게 나오는게 아닌걸까요?? 너무 추상적이에요... 만약 저렇게 추상적이게 나온다면, 임의로 성능 지표를 확인해가며, 수치형이 있다면 스케일링을 적용해보고, 하이퍼 파라미터가 성능 지표가 높게 나온다면 적용해보고... 이렇게 해야하는건가요? (외람된 질문이지만, 성능 지표가 너무 높게 나와도 안좋은거 아닌가요? 과적합 문제라던지요..)