TRAMS AI 프로젝트 문의
AI 뽀개기

Julius AI 같은 서비스 제작하기: 자연어 데이터 분석·차트 생성 기능 제작법

Julius AI 같은 서비스의 자연어 데이터 분석과 차트 생성 기능을 설계합니다. 엑셀·CSV 입력부터 AI API의 분석 계획, DuckDB·pandas의 계산, Plotly 시각화와 자체 검증 로직까지 연결합니다.

핵심 요약

1. 엑셀·CSV와 질문을 받아 집계 표·차트·설명을 만드는 자연어 데이터 분석 기능을 설계합니다. 2. AI API는 분석 계획과 설명을, DuckDB·pandas는 계산과 정제를, Plotly는 차트 생성을 맡습니다. 3. 접근권한, 업무별 계산 규칙, 결과 검산과 실행 제한은 자체 개발합니다.

Julius AI의 핵심 가치는 표 데이터를 질문으로 분석하고 결과를 시각적으로 확인하는 데 있습니다. 공개된 분석 기능은 Excel·CSV·Google Sheets 입력, 데이터 정리, 통계 분석과 차트 생성을 포함합니다. 이번 트램스 AI 「AI 서비스 뽀개기」는 그중 데이터 입력부터 결과 설명까지를 제작 범위로 삼습니다. 아래 기술 조합은 이 흐름을 자체 서비스로 구현하는 대안입니다.

엑셀 분석 챗봇 개발: 파일과 질문을 받는 구조

입력은 사용자의 엑셀·CSV 파일, 분석 대상 시트와 질문입니다. 파일을 읽어 열 이름과 자료형을 추출하고, 자체 로직으로 파일 크기와 시트 선택을 검사합니다. 출력은 분석할 표와 열 구조, 선택한 데이터 범위입니다.

Google Sheets 연동을 추가할 때는 일반 API인 Sheets API로 접근권한이 있는 셀 범위를 읽습니다. 원자료는 사용자의 스프레드시트이며 API는 이를 연결하는 수단입니다. 자체 로직은 사용자별 문서 접근 범위를 확인하고 읽은 범위를 기록합니다. 업로드 파일 분석에는 이 API가 필수는 아닙니다.

자연어 데이터 분석: 질문을 실행 계획으로 변환

입력은 “월별 순매출과 상품별 비중을 보여줘” 같은 질문과 날짜·상품·금액 열 정보입니다. OpenAI Structured Outputs는 모델 응답을 지정한 JSON 구조에 맞추는 기능입니다. 이를 이용해 기간, 필터, 묶음 기준과 계산 항목을 담은 분석 계획 후보를 받도록 설계합니다.

F38 서비스 공개 이미지 1
출처: julius.ai

자체 로직은 지정한 열의 존재 여부와 환불·할인 반영 기준을 확인합니다. 기간이 빠졌거나 순매출의 정의가 모호하면 확인 질문을 만들고, 거절·불완전 응답은 계산 단계로 넘기지 않습니다. 출력은 검토 가능한 분석 조건과 작업 목록입니다. 출력 형식이 맞는 것과 분석 내용이 정확한 것은 별도로 확인합니다.

매출 데이터 분석 자동화: 정제와 집계 연결

입력은 검증된 계획과 대상 표입니다. DuckDB는 데이터 조회 언어인 SQL을 사용하는 오픈소스 분석 엔진이고, pandas는 표를 가공하는 Python 라이브러리입니다. CSV 파일 AI 분석에서는 pandas로 날짜와 숫자 형식을 정리한 뒤 DuckDB로 월별 합계와 상품별 비중을 계산하는 구성을 제안합니다.

Function calling은 모델이 호출할 함수와 인자를 제안하고 애플리케이션이 실행하는 연결 방식입니다. 자체 로직은 허용된 계산 함수인지 확인한 뒤 읽기 범위, 실행 시간과 메모리 한도를 적용합니다. 출력은 집계 표와 적용한 필터·계산식이며, 수치는 실행 코드가 산출합니다. pandas는 이 과정의 가공 도구이며 원자료 공급원은 아닙니다.

F38 서비스 공개 이미지 3
출처: julius.ai

엑셀 분석 결과 검증: 수치와 계산 근거 대조

입력은 원본 표, 정제 기록과 집계 결과입니다. pandas와 DuckDB로 원본·필터 후 행 수와 금액 합계를 대조하도록 구성합니다. 자체 로직은 빈 값 처리, 중복 주문 판별, 통화·금액 단위와 환불 반영 규칙을 정합니다.

여러 시트를 합칠 때는 연결 기준 열의 중복으로 행 수와 합계가 부풀지 않았는지도 검사합니다. 통계 분석을 추가한다면 선택한 검정의 적용 조건과 유의성 판단을 따로 검증합니다. 출력에는 결과 수치뿐 아니라 제외한 행의 사유, 적용 규칙과 합계 대조 결과를 함께 담습니다.

AI 데이터 시각화: 검산한 표를 차트와 설명으로

입력은 검산을 마친 결과 표와 비교 목적입니다. Plotly는 차트를 그리는 오픈소스 Python 라이브러리로, 월별 추이는 선그래프로, 상품별 비교는 막대그래프로 표현할 수 있습니다. 자체 로직은 날짜 정렬, 축 단위와 빠진 기간의 표시 방식을 결정합니다. 출력은 결과 표와 같은 수치를 사용하는 차트입니다.

Julius AI 유사 기능 구현 기술 요약
자료: 트램스 AI · 유사 기능 구현 기술 요약

설명은 OpenAI API에 계산 결과와 필터 조건을 전달해 생성하도록 설계합니다. 자체 로직은 설명 속 숫자를 결과 표와 대조하고, 자료에 없는 원인 해석을 걸러냅니다. 출력은 “매출이 감소했다”는 관찰과 추가 확인이 필요한 항목을 구분한 문장입니다.

반복 분석과 업무 연결을 위한 운영 설계

반복 분석의 입력은 새 파일과 저장된 분석 조건입니다. 자체 로직으로 열 구조의 변경을 확인한 뒤 같은 정제·집계·검산·시각화 절차를 실행합니다. AI 스킬은 분석 순서, 질문 템플릿과 검산 지침을 묶는 선택적 구성으로 둘 수 있습니다. 데이터 연결과 실제 계산은 앞서 구성한 API와 실행 코드가 맡고, 출력은 같은 기준으로 비교할 수 있는 분석 결과입니다.

연동할 문서의 이용권한과 API의 지원 범위를 확인하고, AI API에 전달할 열과 결과 범위를 정합니다. 데이터 보관 기간과 오류 발생 시 재실행 기준도 자체 서비스 정책에 포함합니다. 이렇게 책임을 나누면 AI 데이터 분석 소프트웨어의 기능별 운영 조건을 구체화할 수 있습니다.

유사 서비스를 제작하려면 필요한 분석 기능, 입력 자료의 형태와 연결할 업무를 정리해 주세요. 트램스 AI 제작 문의는 https://trams.co.kr/ai-si/contact/#inquiry 에서 접수할 수 있습니다.

참고 자료

  1. https://julius.ai/home/ai-for-data-analysis
  2. https://julius.ai/
  3. https://developers.openai.com/api/docs/guides/function-calling
  4. https://cloud.google.com/bigquery/docs/reference/rest
  5. https://developers.google.com/workspace/sheets/api/guides/concepts
  6. https://developers.google.com/workspace/slides/api/guides/overview
  7. https://duckdb.org/docs/stable/
  8. https://pandas.pydata.org/docs/
  9. https://developers.openai.com/api/docs/guides/text
  10. https://plotly.com/python/
  11. https://julius.ai/faq/chat-start-guide
  12. https://aisharenet.com/ko/julius-ai/
  13. https://www.datacamp.com/tutorial/julius-ai-guide
  14. https://www.reddit.com/r/OpenAI/comments/1npkuel/tried_building_a_better_julius_conversational/
  15. https://developers.openai.com/api/docs/guides/structured-outputs
  16. https://duckdb.org/
TRAMS AI

비슷한 AI 서비스를
사업에 적용하고 싶으신가요?

아이디어와 필요한 기능을 알려주시면 제작 범위와 방법을 검토합니다.

프로젝트 문의