본문으로 건너뛰기
버전: Next

AI 코드 생성 및 편집

D.Hub의 파이프라인 코드 에디터에는 AI 코딩 도우미가 내장되어 있습니다. 자연어로 원하는 로직을 설명하면 코드를 자동 생성하고, 기존 코드를 선택하여 AI에게 수정을 요청할 수도 있습니다.


AI 코드 생성

새로운 코드를 처음부터 작성할 때 AI 코드 생성 기능을 활용합니다.

사용 방법

[Screenshot] AI 코드 생성 프롬프트 화면

AI 코드 생성

  1. 파이프라인의 코드 노드 에디터를 엽니다.
  2. 툴바의 AI 버튼을 클릭하거나 단축키 Cmd+I (Mac) / Ctrl+I (Windows)를 누릅니다.
  3. 프롬프트 입력창이 나타나면 원하는 로직을 자연어로 설명합니다.
  4. 생성(Generate) 버튼을 누르면 AI가 코드를 작성하여 미리보기를 보여줍니다.
  5. 결과가 만족스러우면 Accept를 눌러 에디터에 적용하고, 그렇지 않으면 Reject로 취소합니다.

지원 언어

Python (polars)

D.Hub의 Python 코드 노드는 polars 라이브러리를 사용하여 데이터를 처리합니다. AI가 생성하는 코드는 파이프라인의 입출력 규격을 자동으로 준수합니다.

  • inputs 딕셔너리에서 이전 노드의 데이터프레임을 가져옵니다.
  • 처리 결과를 output 변수에 할당합니다.
  • polars의 Expression API를 활용한 효율적인 코드를 생성합니다.

프롬프트 예시:

  • "입력 데이터에서 'status'가 'active'인 행만 필터링해줘"
  • "'amount' 컬럼의 날짜별 합계를 구하고, 결과를 내림차순으로 정렬해줘"
  • "두 입력 데이터프레임을 'id' 컬럼 기준으로 조인해줘"

SQL

표준 SQL 문법을 지원하며, 입력 테이블 이름을 자동으로 매핑합니다.

프롬프트 예시:

  • "매출 테이블에서 월별 총매출을 집계해줘"
  • "고객 테이블과 주문 테이블을 조인하고, 최근 30일 내 주문이 있는 고객만 조회해줘"

인라인 AI 편집

이미 작성된 코드를 수정하거나 개선할 때 인라인 AI 편집 기능을 사용합니다.

사용 방법

[Screenshot] AI 인라인 편집 화면

AI 인라인 편집

  1. 에디터에서 수정할 코드 영역을 드래그하여 선택합니다.
  2. 선택 영역 근처에 나타나는 AI 선택 메뉴에서 편집 옵션을 선택하거나, Cmd+I / Ctrl+I를 눌러 인라인 프롬프트를 엽니다.
  3. 프롬프트 입력창에 수정 지시를 입력합니다.
  4. AI가 제안한 변경 사항이 코드 블록으로 표시됩니다.
  5. 변경 내용을 확인한 후 Accept 또는 Reject를 선택합니다.

활용 예시

요청 유형프롬프트 예시
변수명 개선"변수명을 좀 더 직관적으로 바꿔줘"
에러 처리 추가"이 부분에 null 값 처리 로직을 추가해줘"
성능 최적화"이 루프를 polars Expression으로 변환해줘"
주석 추가"각 단계에 설명 주석을 추가해줘"
로직 수정"필터 조건을 'active'에서 'completed'로 변경해줘"

사용 가능한 컨텍스트

AI는 코드를 생성하거나 편집할 때 현재 작업 환경의 컨텍스트를 자동으로 참조합니다.

컨텍스트설명
데이터셋 스키마코드 노드에 연결된 입력 데이터셋의 컬럼명, 데이터 타입 정보
파이프라인 구조현재 노드의 입출력 관계와 이전 노드의 출력 형태
기존 코드에디터에 이미 작성되어 있는 코드 (인라인 편집 시)

컨텍스트가 풍부할수록 AI의 코드 생성 품질이 높아집니다. 데이터셋이 연결된 상태에서 코드를 생성하면 컬럼명과 타입을 정확하게 반영한 코드를 얻을 수 있습니다.

프롬프트 작성 팁

구체적인 프롬프트일수록 더 정확한 코드가 생성됩니다.

덜 구체적: "데이터 처리해줘"

더 구체적: "입력 데이터에서 'created_at' 컬럼을 기준으로 최근 7일 데이터만 필터링하고, 'category'별 'amount' 합계를 구해줘"


단축키 요약

동작MacWindows/Linux
AI 코드 생성 / 인라인 편집Cmd+ICtrl+I

자주 묻는 질문

Q: AI가 생성한 코드가 실행되지 않아요.

  • 프롬프트에 입력/출력 형태를 더 구체적으로 명시해 보세요.
  • 데이터셋이 노드에 제대로 연결되어 있는지 확인하세요. 연결된 데이터셋의 스키마를 AI가 참조합니다.

Q: 인라인 편집이 작동하지 않아요.

  • 코드 영역을 먼저 선택한 후 Cmd+I / Ctrl+I를 눌러야 인라인 편집 모드가 활성화됩니다.
  • 아무것도 선택하지 않은 상태에서는 코드 생성 모드로 동작합니다.

Q: SQL 모드에서 테이블 이름을 어떻게 지정하나요?

  • AI가 파이프라인 입력 노드의 이름을 자동으로 테이블 이름에 매핑합니다. 프롬프트에서 자연어로 테이블을 언급하면 됩니다.

주의 사항

  • AI가 생성한 코드는 반드시 실행 전에 검토하세요. 예상과 다른 로직이 포함될 수 있습니다.
  • 복잡한 비즈니스 로직은 한 번에 요청하기보다 단계별로 나누어 요청하면 더 좋은 결과를 얻을 수 있습니다.
  • 인라인 편집 시 Diff View를 꼼꼼히 확인한 후 적용하세요. 의도하지 않은 변경이 포함될 수 있습니다.
  • AI 기능은 인터넷 연결이 필요하며, LLM 서비스 상태에 따라 응답 시간이 달라질 수 있습니다.