홈으로 돌아가기

처음 등록하는 실무자용

코딩 없이 계산기 등록하기

계산 업무를 설명하면 입력값, 출력값, 코드 초안을 만들 수 있습니다.Python과 HTML/CSS/JS 방식을 나눠 보고, 내 계산기에 맞는 방식을 선택하세요.

계산기 등록 시작
1

계산 업무 설명

계산 목적, 적용 조건, 제외 조건을 말로 적습니다.

2

입력값 정리

사용자가 넣을 값의 이름, 단위, 필수 여부를 정합니다.

3

출력값 정리

계산 후 보여줄 결과, 단위, 소수점 기준을 정합니다.

4

샘플 검증

대표 입력값과 예상 결과로 AI 코드가 맞는지 확인합니다.

현재 등록 화면 흐름

기본 정보

계산기 이름, 요약, 설명, 카테고리, 버전 메모와 아이콘을 먼저 입력합니다.

계산기 이름요약아이콘

구현 방식

구현 방식에서 Python 함수 또는 HTML/CSS/JS 화면을 선택합니다.

Python 함수HTML/CSS/JS 화면

Python 등록 방식

Python 함수는 입력/출력을 먼저 정하는 방식과 기존 코드에서 시작하는 방식 중 선택합니다.

Python 직접 작성Python 코드에서 시작

작업 이어가기

작성 중인 내용은 서버에 임시저장하고, 더 이상 필요 없으면 임시저장 삭제로 정리합니다.

임시저장임시저장 삭제

코드보다 먼저 정리할 것

코딩을 모르는 사용자는 먼저 계산 업무를 설명하고, 입력값과 출력값을 표로 정리하면 됩니다. 영문 key와 코드는 AI가 초안을 만들 수 있지만, 계산식과 결과가 업무 기준에 맞는지는 등록자가 확인해야 합니다.

구분화면 표시명단위추천 key
입력값유량LPMflow_lpm
입력값배관 내경mmpipe_diameter_mm
출력값압력손실kPapressure_loss_kpa
출력값검토 의견-selection_note

제출 전 확인

  • 계산기 이름만 보고 용도를 알 수 있습니다.
  • 설명에 적용 조건과 제외 조건이 들어 있습니다.
  • 입력값과 출력값의 단위가 명확합니다.
  • 샘플 입력값으로 검증이 성공했습니다.
  • AI가 만든 계산식이 실무 기준과 맞는지 확인했습니다.

처음 등록할 때 추천

Python 계산기

입력값과 출력값을 등록 화면에서 구성하고, 계산 로직만 Python 코드로 실행하는 방식입니다.

이럴 때 적합합니다

  • 수식과 판정 기준이 중심인 계산기
  • 화면 디자인보다 정확한 계산 결과가 중요한 경우
  • 단위 변환, 용량 산정, 압력손실처럼 결과 필드가 명확한 경우

진행 순서

  1. 계산 목적과 적용 조건을 한 문단으로 적습니다.
  2. 입력값의 한글 이름과 단위를 정한 뒤 AI에게 영문 key를 제안하게 합니다.
  3. 출력값의 이름, 단위, 소수점 자리수를 정합니다.
  4. AI가 만든 calculate(inputs) 코드를 등록 화면에 붙여넣습니다.
  5. 샘플 입력값으로 검증하고 결과가 실무 기준과 맞는지 확인합니다.

AI 프롬프트

등록 규칙

등록 가능한 코드 형식을 AI에 전달할 때 사용합니다.

DCS Facility Calc Market에 등록할 Python 코드는 아래 규칙을 반드시 지켜줘.

- 실행 진입점은 main.py의 def calculate(inputs): 함수여야 해.
- inputs는 등록된 입력 key를 담은 dictionary야.
- 입력값은 inputs["key"] 또는 inputs.get("key")로 읽어줘.
- 반환값은 등록된 출력 key를 모두 포함하는 dictionary여야 해.
- 입력과 출력 key는 영문자 또는 밑줄로 시작하고 영문자, 숫자, 밑줄만 사용해줘.
- 입력 type은 Number, Text, Select만 사용해줘.
- 출력 type은 Number, Text, Boolean만 사용해줘.
- Select 입력은 허용되는 value와 화면에 표시할 label을 함께 정의해줘.
- 잘못된 입력값은 ValueError와 이해하기 쉬운 메시지로 처리해줘.
- 외부 파일, 네트워크, 운영체제, 환경 변수에 접근하지 마.
- os, subprocess, socket, pathlib, shutil, requests 모듈을 사용하지 마.
- open, __import__, eval, exec, input, compile을 사용하지 마.
- 외부 패키지에 의존하지 말고 순수 계산 코드로 작성해줘.
- 여러 파일로 작성하면 main.py에 calculate(inputs)를 두고 보조 코드는 Python 파일로 분리해줘.
- 코드에서 입출력 필드를 자동으로 읽을 수 있도록 main.py 상단에 아래 형식의 JSON 계약 블록을 포함해줘.

```python
# --- FCM CONTRACT START ---
# {
#   "inputs": [
#     {
#       "key": "flow_rate",
#       "label": "유량",
#       "type": "Number",
#       "required": true,
#       "defaultValue": "10",
#       "unit": "m3/h"
#     }
#   ],
#   "outputs": [
#     {
#       "key": "pressure_loss",
#       "label": "압력손실",
#       "type": "Number",
#       "unit": "kPa",
#       "precision": 2
#     }
#   ]
# }
# --- FCM CONTRACT END ---
```

마지막에는 Python 파일별 전체 코드, 입력 필드 표, 출력 필드 표, 샘플 입력값과 예상 결과를 제공해줘.

Python 코드 형태

def calculate(inputs):    flow_lpm = float(inputs["flow_lpm"])    if flow_lpm < 0:        raise ValueError("유량은 0 이상이어야 합니다.")    return {        "flow_cmh": round(flow_lpm * 0.06, 2),    }

체크리스트

  • def calculate(inputs): 함수가 있습니다.
  • 입력 key와 inputs["key"] 이름이 같습니다.
  • 출력 key와 return dictionary의 key가 같습니다.
  • 숫자 결과는 round로 표시 자리수를 맞췄습니다.
  • 외부 네트워크 호출, 파일 접근, 환경 변수 조회는 사용하지 않습니다.