본문 바로가기

전체 글99

구글 고객영업부 3만명 구조조정 계획.. AI의 습격 https://www.ajunews.com/view/20231226144424314 구글, 3만명 구조조정 계획…美 IT업계, AI發 감원 시작되나 | 아주경제 미국 IT 기업 구글이 인공지능(AI) 기술을 도입 대규모 인력 구조조정을 준비한다는 보도가 나왔다. 이미 미국 IT업계가 올해 고금리 여파에 대규모 감원을 단행한 가운데 AI 기술 확산으로 추가 www.ajunews.com AI 시스템이 효율적으로 운영할 수 있게 된 단계에 이르러.. 유튜브, 구글, 지메일 지도 등 구글 서비스에 광고 전담 직원이 필요없게 되었다. AI는 인간의 제 살 파먹기와 같다. AI를 누릴 수 있는 자본을 가진 인간은 삶의 질이 뛰어날 정도로 좋아지지만, 그렇지 않은 인간은 소멸되는 구조로 가는 듯 하다. AI로 인해 .. 2024. 1. 9.
Custom Search Site Restricted JSON API 종료 예정. (Vertex AI Search로 대체 예정) 프로그래밍 검색 엔진 고객님께, 2024년 12월 18일에 Custom Search Site Restricted JSON API 엔드포인트에서 트래픽 제공이 중단될 예정입니다. 2023년 12월 18일부터 모든 Custom Search Site Restricted JSON API 고객은 사이트 검색 기능에 대한 액세스 권한을 유지하려면 Google Cloud의 Vertex AI Search로 전환을 시작해야 합니다. Google Cloud Vertex AI Search로 전환하는 이유는 무엇인가요? Google Cloud는 올해 여러 AI 제품을 새로 출시했으며, 새로운 AI 기능을 통해 기존 제품을 개선하기 위해 꾸준히 노력하는 중입니다. 새로운 Vertex AI Search 제품은 Custom Sea.. 2024. 1. 4.
OpenAI API (ChatGPT) 응답결과를 채팅처럼 가공해보자. https://mitw.tistory.com/75 ChatGPT를 사용해보자. OpenAI API java 예제 일단은 사용하기에 앞서 몇가지 짚고 넘어가야하는 부분이 있다. 바로 API 옵션이다. 옵션이야 상당히 많지만, 좀 필수적으로 보이는 부분만 간략하게 정리하였다. 아래는 옵션 설정이다. //* Open mitw.tistory.com 먼저 앞선 예제를 이은 내용임. 질문 : mitw.tistory.com이라는 블로거는 누군가? 일 때, 답변은 아래와 같다. 위 Json을 https://jsonlint.com/로 깔끔하게 정리하면, { "id": "cmpl-8co7FOJBZDdUN8Wq7bg6hNkmBGAlL", "object": "text_completion", "created": 17042598.. 2024. 1. 3.
ChatGPT를 사용해보자. OpenAI API java 예제 일단은 사용하기에 앞서 몇가지 짚고 넘어가야하는 부분이 있다. 바로 API 옵션이다. 옵션이야 상당히 많지만, 좀 필수적으로 보이는 부분만 간략하게 정리하였다. 아래는 옵션 설정이다. //* Open AI Api Url (종종 바뀌는 듯 함) final static String OPENAI_API_URL = "https://api.openai.com/v1/completions"; //* Open AI Api Key final static String OPENAI_API_KEY = "YOUR_API_KEY"; //* 엔진 종류 및 가격 정보 https://openai.com/pricing final static String MODEL_NAME = "gpt-3.5-turbo-instruct"; //* 0.0.. 2024. 1. 2.
mysql / utf8_general_ci에서 utf8mb4_general_ci로 변환 (feat. 레츠투 이모지) mysql> show variables like 'char%'; +--------------------------+----------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | c.. 2023. 11. 21.
mysql / 버전, 스토리지 엔진, 캐릭터 셋, 테이블 명 대소문자 구분 확인 (설치 후 확인해야 할 부분들) 1. 설치 후 지원하는 언어셋을 확인하고, 이건 뭐 공통일 것임. show character set; 2. mysql 버전을 확인한다. select version(); 3. 스토리지 엔진 방식을 확인한다. SELECT support, engine FROM information_schema.engines where support = 'DEFAULT'; 4. 그리고 대소문자 구분을 하는지 확인한다. show variables like 'lower%'; linux의 경우, lower_case_table_names가 1이면 대소문자 구분을 하지 않는다는 것이다. 대소문자 구분을 하지 않는 경우 tb_test와 TB_TEST는 같은 테이블로 인지한다. 대소문자 구분을 하는 경우 서로 다른 테이블로 인지하기 때문에.. 2023. 11. 21.
image file 속에 web shell (웹쉘) 찾기. ClamAV, 알약, V3, Avast 모두 web shell을 찾지는 못하였다.. 그래서, 그냥 직접 만들자. 그러면 기본적인 부분은 찾을 수 있겠다 싶어서 직접 만들어서 찾아보도록 했다. 그런데 대략 300만개 이미지 파일을 검사를 하는데에 시간이 오래걸리긴 했지만... 5개가 검출되었고, php 코드가 숨겨져있었다. 기본적인 소스코드는 아래와 같다. import java.io.*; /** * ImageFileInWebShellChecker : 파라미터로 받은 경로를 기반으로 이미지 파일을 찾고 이미지 속에 웹쉘이 존재하는지 체크하는 클래스 * * @author mitw * @version 1.0 */ public class ImageFileInWebShellChecker { public static.. 2023. 11. 19.
ClamAV - linux / unix 기반의 오픈 소스 Anti Virus ClamAV(클램AV)는 오픈 소스 바이러스 스캐너입니다. 주로 리눅스와 유닉스 기반 시스템에서 사용되며, 무료로 제공되는 소프트웨어입니다. ClamAV는 악성 코드, 바이러스, 트로이 목마, 웜 등을 탐지하는 데 사용됨. 이 프로그램은 명령줄 인터페이스(CLI)를 통해 사용되거나, 다양한 프론트엔드와 통합하여 그래픽 사용자 인터페이스(GUI)에서도 활용가능. ClamAV는 이메일 서버나 파일 서버 등에서 악성 코드를 검사하고 차단하는 데에 특히 유용합니다. - By ChatGPT - 일단 서버에 설치를 하자. apt-get install clamav root@whatthelinux:~# apt-get install clamav 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다... .. 2023. 11. 14.
atlassian / jira software webhook setting. (지라 웹훅) atlassian의 소프트웨어인 jira에서 이벤트가 발생 시 실시간으로 해당 정보에 대한 내용을 공유받기 위한, webhook을 설정하려고함. * 참고로 jira 7.12.0 버전이라서 프로젝트안에서 automation으로 webhook을 구현하는 방식이 여기엔 없다. 일단 jira에 대한 관리 권한이 필요하다. 시스템 - 좌측 메뉴 제일 하단 고급탭 - 웹훅 웹훅 만들기를 진행하면 아래와 같은 화면을 얻을 수 있다. 웹훅의 이름, url, 설명 그리고 어떤 이벤트를 받을 것인가에 대한 상세 설정. url에서는 추가로 매개변수를 GET 방식으로 받을 수 있다. 웹훅 리스너를 생성하였다. 이제 웹훅을 받을 url 측에서 필요한 작업이 필요하다. 작업에 앞서, 공식 가이드에 의하면 webhook paylo.. 2023. 11. 9.
intellij / project structure 설정하기. intellij(인텔리제이)에서 프로젝트를 import를 하고나서 project structure는 어떻게 잡아야 할까. 독학으로 알게된 부분에 대한 정리라 안맞는 부분이 있을 수도 있음. 하지만, 이렇게 이용했을 때 몇년간 별탈없이 잘 진행됨. 초반에 해당 부분에 대한 설정이 어떤건지 이해를 하지 못하여 어려움을 겪어 여기에 정리함. 아래 부터는 예시 그림과 설명 글을 왕복해서 보면서 하는 눈고통을 덜고자 이미지에 코멘트를 추가하여 등록함. 이미지 순서대로 빌드를 하면 Local에 프로젝트를 실행할 수 있음. maven과 gradle 둘다 별차이 없음. 1. 프로젝트 설정 2. 모듈 설정 3. 라이브러리 설정 4. 아티팩츠 설정 5. Run/Debug Configurations 설정 - Deployme.. 2023. 11. 7.
SLF4J: No SLF4J providers were found. SLF4J: Defaulting to no-operation (NOP) logger implementation. build.gradle 파일에서 ... dependencies { // Spring MVC Dependency implementation "org.springframework:spring-core:5.0.0.RELEASE" implementation "org.springframework:spring-beans:5.0.0.RELEASE" implementation "org.springframework:spring-context:5.0.0.RELEASE" implementation "org.springframework:spring-webmvc:5.0.0.RELEASE" implementation "org.springframework:spring-websocket:4.1.6.RELEASE" implementa.. 2023. 10. 31.
Intellij / Datagrip에서 MS-SQL to MySQL 로 테이블을 간단하게 이관시키는 방법. 테이블 1개를 이관한다는 가정을 하고, MS-SQL에서 MySQL로 이기종 이관 시 아래와 같이 간단하게 Intellij IDE에서는 드래그앤 드랍으로 할 수 있다. (MS-SQL 커넥션과 MySQL 커넥션을 맺은 상태) MS-SQL 테이블을 잡고 드래그앤 드랍으로 이관할 MySQL 테이블에 드래그앤드랍! 그러면 아래와 같이 이기종간 테이블을 임포트하겠다는 창이 뜬다. 테이블 생성부터 데이터까지 가져간다. 기존 업체에서 정의한 테이블에 필드명이 참 그렇긴 하지만.. 2005년에 만든 구조라고 하니.. 이 부분은 넘어가장.. 또한, 위에서 필드 명이나, 데이터타입 등 remap도 제공된다. 이를 통하여 맞추자. 일단은 테스트를 하기 위함이라서 그냥 그대로 만들겠음. MySQL에 테이블이 생성되었다. 데이터.. 2023. 10. 10.