snow package create

스테이지에 업로드할 수 있는 Python 패키지를 zip 파일로 생성하여 Snowpark Python 앱에 가져올 수 있습니다.

구문

snow snowpark package create
  <name>
  --ignore-anaconda
  --index-url <index_url>
  --skip-version-check
  --allow-shared-libraries
  --connection <connection>
  --host <host>
  --port <port>
  --account <account>
  --user <user>
  --password <password>
  --authenticator <authenticator>
  --private-key-file <private_key_file>
  --token-file-path <token_file_path>
  --database <database>
  --schema <schema>
  --role <role>
  --warehouse <warehouse>
  --temporary-connection
  --mfa-passcode <mfa_passcode>
  --enable-diag
  --diag-log-path <diag_log_path>
  --diag-allowlist-path <diag_allowlist_path>
  --format <format>
  --verbose
  --debug
  --silent
Copy

인자

name

만들 패키지의 이름입니다.

선택 사항

--ignore-anaconda

Snowflake Anaconda 채널에서 패키지를 조회하지 마십시오. 기본값: False.

--index-url TEXT

패키지 조회에 사용할 Python 패키지 인덱스의 기본 URL입니다. 이는 PEP 503을 준수하는 리포지토리(단순 리포지토리 API) 또는 동일한 형식으로 배치된 로컬 디렉터리를 가리켜야 합니다.

--skip-version-check

요구 사항과 Anaconda 간의 종속성 버전 비교는 건너뜁니다. 기본값: False.

--allow-shared-libraries

PIP를 통해 설치된 패키지를 사용할 때 공유(.so) 라이브러리를 허용합니다. 기본값: False.

--connection, -c, --environment TEXT

config.toml 파일에 정의된 연결의 이름입니다. 기본값: default.

--host TEXT

연결을 위한 호스트 주소입니다. 연결에 지정된 값을 재정의합니다.

--port INTEGER

연결의 포트입니다. 연결에 지정된 값을 재정의합니다.

--account, --accountname TEXT

Snowflake 계정에 할당된 이름입니다. 연결에 지정된 값을 재정의합니다.

--user, --username TEXT

Snowflake에 연결할 사용자 이름입니다. 연결에 지정된 값을 재정의합니다.

--password TEXT

Snowflake 비밀번호입니다. 연결에 지정된 값을 재정의합니다.

--authenticator TEXT

Snowflake 인증자입니다. 연결에 지정된 값을 재정의합니다.

--private-key-file, --private-key-path TEXT

Snowflake 개인 키 파일 경로입니다. 연결에 지정된 값을 재정의합니다.

--token-file-path TEXT

Snowflake에 연결할 때 사용해야 하는 OAuth 토큰이 포함된 파일 경로입니다.

--database, --dbname TEXT

사용할 데이터베이스입니다. 연결에 지정된 값을 재정의합니다.

--schema, --schemaname TEXT

사용할 데이터베이스 스키마입니다. 연결에 지정된 값을 재정의합니다.

--role, --rolename TEXT

사용할 역할입니다. 연결에 지정된 값을 재정의합니다.

--warehouse TEXT

사용할 웨어하우스입니다. 연결에 지정된 값을 재정의합니다.

--temporary-connection, -x

config에서 정의된 연결 대신, 명령줄 매개 변수로 정의된 연결을 사용합니다. 기본값: False.

--mfa-passcode TEXT

다단계 인증(MFA)에 사용할 토큰입니다.

--enable-diag

Python 커넥터 진단 테스트를 실행합니다. 기본값: False.

--diag-log-path TEXT

진단 보고서 경로입니다. 기본값: <temporary_directory>.

--diag-allowlist-path TEXT

선택적 허용 목록에 대한 진단 보고서 경로입니다.

--format [TABLE|JSON]

출력 형식을 지정합니다. 기본값: TABLE.

--verbose, -v

로그 수준 info 이상의 로그 항목을 표시합니다. 기본값: False.

--debug

로그 수준 디버그 이상에 대한 로그 항목을 표시하며, 디버그 로그에는 추가 정보가 포함됩니다. 기본값: False.

--silent

콘솔로의 중간 출력을 끕니다. 기본값: False.

--help

이 명령에 대한 도움말 텍스트를 표시합니다.

사용법 노트

snowpark package create 명령은 다음을 수행합니다.

  • 스테이지에 업로드할 수 있는 아티팩트를 생성합니다.

  • 네이티브 라이브러리를 확인하고 계속할지 묻습니다. 다운로드한 패키지에 네이티브 라이브러리가 있는 경우 이 명령은 snowpark package build 명령과 동일하게 작동합니다.

  • 이 예제는 스테이지에 업로드할 수 있고 나중에 Snowpark Python 앱에서 가져올 수 있는 Python 패키지를 zip 파일로 생성합니다. “july” 패키지에 대한 종속성은 Anaconda 채널에 있으므로 .zip 파일에서 제외되었습니다. 이 명령은 Snowpark 프로젝트의 requirements.txt 에 포함해야 하는 패키지를 표시합니다.

    snow snowpark package create july==0.1
    
    Copy
    Package july.zip created. You can now upload it to a stage using
    snow snowpark package upload -f july.zip -s <stage-name>`
    and reference it in your procedure or function.
    Remember to add it to imports in the procedure or function definition.
    
    The package july is successfully created, but depends on the following
    Anaconda libraries. They need to be included in project requirements,
    as their are not included in .zip.
    matplotlib
    contourpy >=1.0.1
    numpy>=1.20
    bokeh
    selenium
    mypy==1.8.0
    Pillow
    pytest-xdist
    wurlitzer
    cycler >=0.10
    fonttools >=4.22.0
    kiwisolver >=1.3.1
    pyparsing >=2.3.1
    jinja2
    python-dateutil >=2.7
    six >=1.5
    importlib-resources >=3.2.0
    
  • 이 예제에서는 requirements.txt 파일에 종속성을 추가할 필요 없이 Snowpark 프로젝트에서 사용할 수 있는 july.zip 패키지를 생성합니다. 오류 메시지는 일부 패키지에 공유 라이브러리가 포함되어 있음을 나타내며, 이는 윈도우를 사용하여 패키지를 만드는 경우와 같이 동작하지 않을 수 있습니다.

    snow snowpark package create july==0.1 --ignore-anaconda --allow-shared-libraries
    
    Copy
    2024-04-11 16:24:56 ERROR Following dependencies utilise shared libraries, not supported by Conda:
    2024-04-11 16:24:56 ERROR numpy
    contourpy
    fonttools
    kiwisolver
    matplotlib
    pillow
    2024-04-11 16:24:56 ERROR You may still try to create your package with --allow-shared-libraries, but the might not work.
    2024-04-11 16:24:56 ERROR You may also request adding the package to Snowflake Conda channel
    2024-04-11 16:24:56 ERROR at https://support.anaconda.com/
    
    Package july.zip created. You can now upload it to a stage using
    snow snowpark package upload -f july.zip -s <stage-name>`
    and reference it in your procedure or function.
    Remember to add it to imports in the procedure or function definition.
    
  • 이 예제는 이미 패키지가 존재하기 때문에 패키지를 만들 수 없습니다. --ignore-anaconda 옵션을 사용하여 패키지를 강제로 생성할 수도 있습니다.

    snow snowpark package create matplotlib
    
    Copy
    Package matplotlib is already available in Snowflake Anaconda Channel.