퇴근5분전

 

프로젝트 시작하면

   1. 설계/분석 개발될 기능에 대하여 정의하고 서술. 

   2. 개발할때 사용한 DB정보, 네트웍정보등 기능과 연결지을 정보들을 파일로 기록... 

   3. 로컬AI에 기능 설명을 요구하면, 질의문에 있는 키워드를 분리하도록 AI에 먼저 요청.

   4. 분리된 키워드 목록을 받고, 키워드에 대한 설명파일들을 뒤져서 RAG용 데이타들로 프롬프트에 추가 후 

   5. "기능설명 요청" + RAG용 데이타 --> 로컬AI에 주면 적절하게 변환하여 응답.

 

구현 해보면 

 

            prompt = @"
DAT 설비에서 마킹에 대해 설명해줘.
";
            /*
DAT 설비에서 마킹은 제품에 고유한 시리얼넘버(SN)를 각인하는 과정입니다. 
요청이 들어오면 PLC에서 SN을 생성하고, 이를 마킹 설비에 전달하여 제품에 각인합니다. 
생성된 SN은 중복 체크, 제품의 SN 정보, 자재 LOTID 연계, 생산 시점, 검사 결과 등 다양한 정보를 확인하는 데 활용됩니다. 
             */

            prompt = @"
DAT 설비에서 마킹에 대해 상세하게 설명해줘.
";
            /*
DAT 설비에서 마킹은 제품에 고유한 시리얼 번호(SN)를 각인하는 과정입니다. 
요청이 들어오면 PLC DW5000번지에 1값이 확인되면, DB에서 USP_MK_C10을 이용하여 SN을 생성하고, PLC DW51000에 기록한 후, 마킹 설비가 이 SN을 제품에 각인합니다. 
생산된 제품의 SN은 중복 체크, 온트레이(양품) 정보, 자재 LOTID 연계, 생산 시점, 검사 결과 등 다양한 정보를 확인하는 데 활용됩니다.              
             */

 

 이런식으로 나오긴 하는데..

똑같은 연관데이타로 질의문에 '상세하게' 유무에 의해 답변이 확 달라진다. 

위 결과만 보면 성공적인 것 같긴한데... 너무 까탈스럽네. 로컬AI라 그런건지... 유료 사용하면 좀 덜 하려나? 

 여기서 RAG용 데이타에 [작업일정]을 추가했더니 엉뚱한 결과가 나오게 된다. 

이게 유료API를 사용하면 RAG 데이타 때문에 토큰이 갈려나갈텐데... 

 

엉뚱한 결과가 나오는 이유는 기능 설명인데 RAG용데이타 추가하는 곳에 [작업일정]을 넣었더니. 

Gemma2가 난독증에 걸린다라나?

 

 질의문에서 분리한 키워드에 대하여 각각 읽어들여서 보내주면? AI가 정리해줄테니까... 

다만, 키워드 용어정리를 로컬에서 어떤 구조로 정리하고 관리해야 AI가 잘 받아먹을까?

 

내일은 좀 더 구체적으로 해봐야겠는데... 뜬금없이 질문에 없는 일정정보를 추가해서 애가 정신못차렸으려나??

질문에 일정을 추가하면? - 그럭저럭 답변으론 쓸만한것도 같고? 근데 일일이 이렇게 수정해야 한다면?

 

질의문: 

"DAT 설비에서 마킹에 대해 설명과, 일정을 상세하게 알려줘"

 

응답:


DAT 설비에서 마킹은 제품에 고유한 시리얼넘버(SN)를 각인하는 과정입니다. 

**마킹 절차:**
1. PLC DW5000번지에 1값이 확인됩니다.
2. DB에서 USP_MK_C10을 이용하여 SN을 생성합니다.
3. 생성된 SN은 PLC DW5100에 기록됩니다.
4. 마킹 설비가 이 SN을 제품에 각인합니다.

**마킹의 활용:**
* **중복체크:** 생성된 SN을 통해 제품의 중복 여부를 확인합니다.
* **온트레이:** 제품이 양품으로 온트레이될 때 SN 정보로 활용됩니다.
* **자재 LOTID 연계:** 제품이 생산될 때 사용된 자재 LOTID와 연계하여 어떤 자재로 생산되었는지 확인할 수 있습니다.
* **생산 시점 확인:** SN을 통해 제품이 언제 생산되었는지 확인할 수 있습니다.
* **검사 결과 확인:** SN을 통해 제품의 검사 결과를 확인할 수 있습니다.

**일정:**
* 2026-09-15: 마킹
* 2026-09-16: 중복체크
* 2026-09-17: 온트레이

 

마크다운 형식인것 같은데... 여긴 안먹히네... 

 

일정을 따로 필터링 하지도 않고... 일정만 다른 형태로 줘야 받아 먹으려나... 

 

*** 추가 ***

 

한국말이 '아'다르고 '어' 다르다고.. 

질의문을 조금만 순서나 단어위치만 바꿔도 답변이 바뀌네?... 

키워드 중심으로 질의문도 AI한테 맡겨야 되나?

 

"DAT 설비에서 마킹에 대해 일정과 상세하게 설명해줘"

DAT 설비에서 마킹은 제품에 고유한 시리얼 번호(SN)를 각인하는 과정입니다. 

이 SN은 중복체크를 통해 제품의 중복 여부를 확인하고, 제품이 온트레이(양품)되면서 제품의 SN 정보로 활용됩니다. 또한, 제품 생산 시 사용된 자재 LOT ID와 연계하여 어떤 자재로 생산되었는지 확인할 수 있으며, 제품 제작 시점, 검사 결과 등의 정보와도 연관됩니다. 

마킹 과정은 다음과 같습니다.

1. PLC DW5000번지에 1값이 확인됩니다.
2. DB에서 USP_MK_C10을 이용하여 SN을 생성합니다.
3. 생성된 SN은 PLC DW51000에 기록됩니다.
4. 마킹 설비가 이 SN을 제품에 각인합니다.

DAT 설비에서 마킹 작업은 2026년 9월 15일에 진행될 예정이며, 이후 중복체크(2026년 9월 16일)와 온트레이(2026년 9월 17일) 작업이 이어집니다.

 

흠~ 

 

0. 프로그램은 서브모니터에 띄워놓고 게임을 한다.

   : 등록된 커런시 시세를 ninja api로 수집해온다. ( 20분에 1회 )

1. 게임에서 아이템 보기위해 ALT 누르면 아이템 정보ㄹ 띄워주고 1, 2 등급은 색상으로 구분... 

2. 해당 아이템 옵션에서 1,2등급은 기본 선택모드( 해제가능 ), 최저가 시세 클릭 

   : 해당 옵션으로 올라와있는 아이템 가격정보를 표시한다. 

     -- 7일 이내 올라온 매물로 제한 가능.

     -- 7개 정도를 확인 한다. 

           = 조건 ! 전체 매물수의 5% 위치에서 시작해서 3개씩 건너뛰어 총 7개 정도를 가져와 시세 확인을 한다.

           = 5% 위치는 트랙바를 움직여 변경 가능.

      ! 거래소API가 한번에 Search 100건. 한번에 매물정보를 조회가능한게 최대 9건이었다. 

        그래서 안전하게 7건까지만 가져오는데... 만약 7일이내 매물이 부족하면 다음 7건씩 조회하여 총 7개의 매물을 맞춘다.

 

** 아이템 (영문/한글) 표시 정보를 json으로 가져오는데 일부 누락된게 있다? ( 공식사이트 api인데...? )

   "병 안에 서신" --- 이번 올플레임시즌 아이템인데.. 없더라. ( 닌자엔 시세가 있는데... )

   보니까 다른 오버레이 개발팀?에서는 게임 설치 파일 중 일부를 분석해서 쓴다는 것 같다.

 

재밌었다.

 

 

 POE 란 게임을 하는데... 장사를 안하니까 재화가 너무 부족해 ... 

트레이드 오버레이 프로그램 들이 있긴 한데.. 기왕이면 만들까? 라고 생각이 되서... 

만들기 시작했다.

 

1. 게임에서 ALT 누르면 아이템 상세가 뜨니까... 그때 동작하도록 만들었다. 

 

2. POE는 모든 아이템들이 재화라서... 값어치를 모르기에... (레어 아이템)은 트레이드로 가격시세정보를 볼 수 있게...

   필터정보를 보내서 받은 매물들의 하위 5% 정도의 위치부터 3개씩 건너 뛰어서 10개를 조회하여 판매 최소값을 정하려 한다. 

   :: 너무 자주 요청하면? API가 짤린다? 블럭시킨다 하니... --> 레어 아이템만? 

   :: Alt 눌렀을때 아이템 정보를 표시해주고 -> 시세확인은 버튼으로... 확인

 

3. 커런시와 갑충석 등... 닌자에 표시된 재화 중 --> 내가 즐겨찾기 한 재화들만 Ninja에 표시된 시세만 표시. 

 

* API 는 확인 완료.

* 게임내 ALT 키를 누르면 오버레이 프로그램과 연계 처리 완료. 

- 닌자 정보들 API로 다운로드 ( 다음주 )

- 거래소 필터 정보 처리 ( 다음주 )

- UI쪽 꾸미기 ( 다다음주...) 

 

계획을 잡으면 대략 추석전엔 끝나겠다.

 

일단 로컬AI는 낮에 공부해야 하니... 

----------------------------------------------------

AI 진짜 무섭긴 무섭다.

오버레이 만들면서 이런 저런 질문을 던져봤는데... 

게다가 관심사분리 코드까지도 만들어주는 걸 보면서.. '나보다 나은데?' ... 

또 AI한테 배운다...

----------------------------------------------------

26-09-07  아이템 정보 파싱이랑, 닌자 시세 가져오는 건 끝났다. 

이제... 아이템 시세 처리만 남았네...

얼마나 난관이 있으려나.. 

--- 게임 창 위에 아이템 정보 띄우기.

    1등급, 2등급 옵션만 색칠해놨음.

 

26-09-08 --------------------------------- ---------------------------------

- 아이템 속성을 필터 조건까지 변환하는 것을 성공... 

     : 내가 가진 아이템들의 대부분 확인해봤는데... 문제는 필터링 데이타를 보니.. 진짜 골때림. 

     : 트레이드 오버레이들 진짜 어떻게 이걸 처리 했나 싶을 정도였다. 

     : 필터 보면 어떤 껀 숫자가 하드코딩 되어있고 어떤건 수치화 되어 있고...

    누락되는건 필터 조건들을 체크해서 switch로 처리 해놨는데.. 하다 보면 또 나오겠지?  

  - 재화 시세도 볼 수 있게... 

     : 거래소, 보관함이 api가 따로 있네?... 

 

26-09-09 --------------------------------------------------------------------

1차 완성... api 최저가 시세도 볼 수 있게 완성..