together 2.0.0a6__tar.gz → 2.0.0a8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- together-2.0.0a8/.release-please-manifest.json +3 -0
- {together-2.0.0a6 → together-2.0.0a8}/CHANGELOG.md +28 -0
- {together-2.0.0a6 → together-2.0.0a8}/PKG-INFO +2 -51
- {together-2.0.0a6 → together-2.0.0a8}/README.md +0 -50
- {together-2.0.0a6 → together-2.0.0a8}/api.md +2 -2
- {together-2.0.0a6 → together-2.0.0a8}/pyproject.toml +2 -1
- {together-2.0.0a6 → together-2.0.0a8}/requirements-dev.lock +1 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_version.py +1 -1
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/api/endpoints.py +3 -4
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/types/fine_tuning.py +72 -14
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/fine_tuning.py +4 -4
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/videos.py +4 -5
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/__init__.py +0 -1
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/fine_tuning_delete_params.py +2 -2
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_fine_tuning.py +14 -6
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_videos.py +9 -9
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_fine_tuning_resources.py +2 -0
- {together-2.0.0a6 → together-2.0.0a8}/uv.lock +3 -1
- together-2.0.0a6/.release-please-manifest.json +0 -3
- together-2.0.0a6/src/together/types/video_create_response.py +0 -10
- {together-2.0.0a6 → together-2.0.0a8}/.gitignore +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/CONTRIBUTING.md +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/LICENSE +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/SECURITY.md +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/bin/check-release-environment +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/bin/publish-pypi +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/.keep +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/coqa-small.jsonl +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/coqa.jsonl +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/embedding.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/file-upload.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/fine_tuning.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/image.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/models.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/examples/streaming.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/release-please-config.json +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_base_client.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_client.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_compat.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_constants.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_exceptions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_models.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_qs.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_resource.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_streaming.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_types.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_compat.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_datetime_parse.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_logs.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_proxy.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_reflection.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_resources_proxy.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_streams.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_sync.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_transform.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_typing.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/_utils/_utils.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/.keep +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/api/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/api/evals.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/api/files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/api/fine_tuning.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/api/models.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/api/utils.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/cli/cli.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/constants.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/resources/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/resources/files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/resources/fine_tuning.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/resources/models.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/types/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/types/error.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/utils/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/utils/_log.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/utils/files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/utils/serializer.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/lib/utils/tools.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/py.typed +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/audio/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/audio/audio.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/audio/speech.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/audio/transcriptions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/audio/translations.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/audio/voices.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/batches.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/chat/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/chat/chat.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/chat/completions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/code_interpreter/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/code_interpreter/code_interpreter.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/code_interpreter/sessions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/completions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/embeddings.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/endpoints.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/evals.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/hardware.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/images.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/jobs.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/models.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/resources/rerank.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio/speech_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio/transcription_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio/transcription_create_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio/translation_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio/translation_create_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio/voice_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/audio_speech_stream_chunk.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/autoscaling.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/autoscaling_param.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/batch_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/batch_create_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/batch_job.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/batch_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/chat_completion.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/chat_completion_chunk.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/chat_completion_structured_message_image_url_param.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/chat_completion_structured_message_text_param.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/chat_completion_structured_message_video_url_param.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/chat_completion_usage.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/chat_completion_warning.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/chat/completion_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/code_interpreter/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/code_interpreter/session_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/code_interpreter_execute_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/completion.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/completion_chunk.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/completion_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/dedicated_endpoint.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/embedding.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/embedding_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/endpoint_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/endpoint_list_avzones_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/endpoint_list_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/endpoint_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/endpoint_update_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/eval_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/eval_create_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/eval_list_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/eval_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/eval_status_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/evaluation_job.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/execute_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/file_delete_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/file_list.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/file_purpose.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/file_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/file_type.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/fine_tuning_cancel_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/fine_tuning_content_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/fine_tuning_delete_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/fine_tuning_list_checkpoints_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/fine_tuning_list_events_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/fine_tuning_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/finetune_event.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/finetune_event_type.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/finetune_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/hardware_list_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/hardware_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/image_data_b64.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/image_data_url.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/image_file.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/image_generate_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/job_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/job_retrieve_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/log_probs.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/model_list_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/model_object.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/model_upload_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/model_upload_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/rerank_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/rerank_create_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/tool_choice.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/tool_choice_param.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/tools_param.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/training_method_dpo.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/training_method_sft.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/video_create_params.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/src/together/types/video_job.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/audio/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/audio/test_speech.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/audio/test_transcriptions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/audio/test_translations.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/audio/test_voices.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/chat/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/chat/test_completions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/code_interpreter/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/code_interpreter/test_sessions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_batches.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_code_interpreter.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_completions.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_embeddings.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_endpoints.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_evals.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_hardware.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_images.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_jobs.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_models.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/api_resources/test_rerank.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/conftest.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/integration/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/integration/constants.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/integration/resources/__init__.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/integration/resources/generate_hyperparameters.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/integration/resources/test_completion.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/integration/resources/test_completion_stream.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/integration/resources/test_files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/sample_file.txt +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_client.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_deepcopy.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_extract_files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_files.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_models.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_qs.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_required_args.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_response.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_streaming.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_transform.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_utils/test_datetime_parse.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_utils/test_proxy.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/test_utils/test_typing.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_async_client.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_client.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_code_interpreter.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_files_checks.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_files_resource.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_imports.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_multipart_upload_manager.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_preference_openai.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/unit/test_video_url.py +0 -0
- {together-2.0.0a6 → together-2.0.0a8}/tests/utils.py +0 -0
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2.0.0-alpha.8 (2025-11-26)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v2.0.0-alpha.7...v2.0.0-alpha.8](https://github.com/togethercomputer/together-py/compare/v2.0.0-alpha.7...v2.0.0-alpha.8)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([49bb5d4](https://github.com/togethercomputer/together-py/commit/49bb5d4ba69ca118ecc34be2d69c4253665e2e81))
|
|
10
|
+
* **api:** Fix internal references for VideoJob spec ([fb5e7bb](https://github.com/togethercomputer/together-py/commit/fb5e7bb3dbaa9427d291de7440c201529b6cf528))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* Address incorrect logic for `endpoint [command] --wait false` logic ([31236a9](https://github.com/togethercomputer/together-py/commit/31236a9df29c22fe7444c2dbb0d4bfc518bc79aa))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Chores
|
|
19
|
+
|
|
20
|
+
* Remove incorrect file upload docs ([5bb847e](https://github.com/togethercomputer/together-py/commit/5bb847e33b55e5d0978c742e86cf931a2c08f919))
|
|
21
|
+
* Remove incorrect file upload docs ([bb97093](https://github.com/togethercomputer/together-py/commit/bb970938650b6f9580538528979221d142f74b6a))
|
|
22
|
+
|
|
23
|
+
## 2.0.0-alpha.7 (2025-11-26)
|
|
24
|
+
|
|
25
|
+
Full Changelog: [v2.0.0-alpha.6...v2.0.0-alpha.7](https://github.com/togethercomputer/together-py/compare/v2.0.0-alpha.6...v2.0.0-alpha.7)
|
|
26
|
+
|
|
27
|
+
### Bug Fixes
|
|
28
|
+
|
|
29
|
+
* include rich in package dependencies ([9c9c5fc](https://github.com/togethercomputer/together-py/commit/9c9c5fcc29183e1598418684391b480d4052c9b9))
|
|
30
|
+
|
|
3
31
|
## 2.0.0-alpha.6 (2025-11-25)
|
|
4
32
|
|
|
5
33
|
Full Changelog: [v2.0.0-alpha.5...v2.0.0-alpha.6](https://github.com/togethercomputer/together-py/compare/v2.0.0-alpha.5...v2.0.0-alpha.6)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: together
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.0a8
|
|
4
4
|
Summary: The official Python library for the together API
|
|
5
5
|
Project-URL: Homepage, https://github.com/togethercomputer/together-py
|
|
6
6
|
Project-URL: Repository, https://github.com/togethercomputer/together-py
|
|
@@ -29,6 +29,7 @@ Requires-Dist: filelock>=3.13.1
|
|
|
29
29
|
Requires-Dist: httpx<1,>=0.23.0
|
|
30
30
|
Requires-Dist: pillow>=10.4.0
|
|
31
31
|
Requires-Dist: pydantic<3,>=1.9.0
|
|
32
|
+
Requires-Dist: rich>=13.7.1
|
|
32
33
|
Requires-Dist: sniffio
|
|
33
34
|
Requires-Dist: tabulate>=0.9.0
|
|
34
35
|
Requires-Dist: tqdm>=4.67.1
|
|
@@ -243,22 +244,6 @@ chat_completion = client.chat.completions.create(
|
|
|
243
244
|
print(chat_completion.response_format)
|
|
244
245
|
```
|
|
245
246
|
|
|
246
|
-
## File uploads
|
|
247
|
-
|
|
248
|
-
Request parameters that correspond to file uploads can be passed as `bytes`, or a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance or a tuple of `(filename, contents, media type)`.
|
|
249
|
-
|
|
250
|
-
```python
|
|
251
|
-
from pathlib import Path
|
|
252
|
-
from together import Together
|
|
253
|
-
|
|
254
|
-
client = Together()
|
|
255
|
-
|
|
256
|
-
client.files.upload(
|
|
257
|
-
file=Path("/path/to/file"),
|
|
258
|
-
purpose="fine-tune",
|
|
259
|
-
)
|
|
260
|
-
```
|
|
261
|
-
|
|
262
247
|
The async client uses the exact same interface. If you pass a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance, the file contents will be read asynchronously automatically.
|
|
263
248
|
|
|
264
249
|
## Handling errors
|
|
@@ -527,40 +512,6 @@ with Together() as client:
|
|
|
527
512
|
|
|
528
513
|
## Usage – CLI
|
|
529
514
|
|
|
530
|
-
### Chat Completions
|
|
531
|
-
|
|
532
|
-
```bash
|
|
533
|
-
together chat.completions \
|
|
534
|
-
--message "system" "You are a helpful assistant named Together" \
|
|
535
|
-
--message "user" "What is your name?" \
|
|
536
|
-
--model mistralai/Mixtral-8x7B-Instruct-v0.1
|
|
537
|
-
```
|
|
538
|
-
|
|
539
|
-
The Chat Completions CLI enables streaming tokens to stdout by default. To disable streaming, use `--no-stream`.
|
|
540
|
-
|
|
541
|
-
### Completions
|
|
542
|
-
|
|
543
|
-
```bash
|
|
544
|
-
together completions \
|
|
545
|
-
"Large language models are " \
|
|
546
|
-
--model mistralai/Mixtral-8x7B-v0.1 \
|
|
547
|
-
--max-tokens 512 \
|
|
548
|
-
--stop "."
|
|
549
|
-
```
|
|
550
|
-
|
|
551
|
-
The Completions CLI enables streaming tokens to stdout by default. To disable streaming, use `--no-stream`.
|
|
552
|
-
|
|
553
|
-
### Image Generations
|
|
554
|
-
|
|
555
|
-
```bash
|
|
556
|
-
together images generate \
|
|
557
|
-
"space robots" \
|
|
558
|
-
--model stabilityai/stable-diffusion-xl-base-1.0 \
|
|
559
|
-
--n 4
|
|
560
|
-
```
|
|
561
|
-
|
|
562
|
-
The image is opened in the default image viewer by default. To disable this, use `--no-show`.
|
|
563
|
-
|
|
564
515
|
### Files
|
|
565
516
|
|
|
566
517
|
```bash
|
|
@@ -198,22 +198,6 @@ chat_completion = client.chat.completions.create(
|
|
|
198
198
|
print(chat_completion.response_format)
|
|
199
199
|
```
|
|
200
200
|
|
|
201
|
-
## File uploads
|
|
202
|
-
|
|
203
|
-
Request parameters that correspond to file uploads can be passed as `bytes`, or a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance or a tuple of `(filename, contents, media type)`.
|
|
204
|
-
|
|
205
|
-
```python
|
|
206
|
-
from pathlib import Path
|
|
207
|
-
from together import Together
|
|
208
|
-
|
|
209
|
-
client = Together()
|
|
210
|
-
|
|
211
|
-
client.files.upload(
|
|
212
|
-
file=Path("/path/to/file"),
|
|
213
|
-
purpose="fine-tune",
|
|
214
|
-
)
|
|
215
|
-
```
|
|
216
|
-
|
|
217
201
|
The async client uses the exact same interface. If you pass a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance, the file contents will be read asynchronously automatically.
|
|
218
202
|
|
|
219
203
|
## Handling errors
|
|
@@ -482,40 +466,6 @@ with Together() as client:
|
|
|
482
466
|
|
|
483
467
|
## Usage – CLI
|
|
484
468
|
|
|
485
|
-
### Chat Completions
|
|
486
|
-
|
|
487
|
-
```bash
|
|
488
|
-
together chat.completions \
|
|
489
|
-
--message "system" "You are a helpful assistant named Together" \
|
|
490
|
-
--message "user" "What is your name?" \
|
|
491
|
-
--model mistralai/Mixtral-8x7B-Instruct-v0.1
|
|
492
|
-
```
|
|
493
|
-
|
|
494
|
-
The Chat Completions CLI enables streaming tokens to stdout by default. To disable streaming, use `--no-stream`.
|
|
495
|
-
|
|
496
|
-
### Completions
|
|
497
|
-
|
|
498
|
-
```bash
|
|
499
|
-
together completions \
|
|
500
|
-
"Large language models are " \
|
|
501
|
-
--model mistralai/Mixtral-8x7B-v0.1 \
|
|
502
|
-
--max-tokens 512 \
|
|
503
|
-
--stop "."
|
|
504
|
-
```
|
|
505
|
-
|
|
506
|
-
The Completions CLI enables streaming tokens to stdout by default. To disable streaming, use `--no-stream`.
|
|
507
|
-
|
|
508
|
-
### Image Generations
|
|
509
|
-
|
|
510
|
-
```bash
|
|
511
|
-
together images generate \
|
|
512
|
-
"space robots" \
|
|
513
|
-
--model stabilityai/stable-diffusion-xl-base-1.0 \
|
|
514
|
-
--n 4
|
|
515
|
-
```
|
|
516
|
-
|
|
517
|
-
The image is opened in the default image viewer by default. To disable this, use `--no-show`.
|
|
518
|
-
|
|
519
469
|
### Files
|
|
520
470
|
|
|
521
471
|
```bash
|
|
@@ -134,12 +134,12 @@ Methods:
|
|
|
134
134
|
Types:
|
|
135
135
|
|
|
136
136
|
```python
|
|
137
|
-
from together.types import VideoJob
|
|
137
|
+
from together.types import VideoJob
|
|
138
138
|
```
|
|
139
139
|
|
|
140
140
|
Methods:
|
|
141
141
|
|
|
142
|
-
- <code title="post /videos">client.videos.<a href="./src/together/resources/videos.py">create</a>(\*\*<a href="src/together/types/video_create_params.py">params</a>) -> <a href="./src/together/types/
|
|
142
|
+
- <code title="post /videos">client.videos.<a href="./src/together/resources/videos.py">create</a>(\*\*<a href="src/together/types/video_create_params.py">params</a>) -> <a href="./src/together/types/video_job.py">VideoJob</a></code>
|
|
143
143
|
- <code title="get /videos/{id}">client.videos.<a href="./src/together/resources/videos.py">retrieve</a>(id) -> <a href="./src/together/types/video_job.py">VideoJob</a></code>
|
|
144
144
|
|
|
145
145
|
# Audio
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "together"
|
|
3
|
-
version = "2.0.0-alpha.
|
|
3
|
+
version = "2.0.0-alpha.8"
|
|
4
4
|
description = "The official Python library for the together API"
|
|
5
5
|
dynamic = ["readme"]
|
|
6
6
|
license = "Apache-2.0"
|
|
@@ -15,6 +15,7 @@ dependencies = [
|
|
|
15
15
|
"distro>=1.7.0, <2",
|
|
16
16
|
"sniffio",
|
|
17
17
|
"click>=8.1.7",
|
|
18
|
+
"rich>=13.7.1",
|
|
18
19
|
"tabulate>=0.9.0",
|
|
19
20
|
"pillow>=10.4.0",
|
|
20
21
|
"types-tabulate>=0.9.0.20240106",
|
|
@@ -128,8 +128,7 @@ def endpoints(ctx: click.Context) -> None:
|
|
|
128
128
|
help="Start endpoint in specified availability zone (e.g., us-central-4b)",
|
|
129
129
|
)
|
|
130
130
|
@click.option(
|
|
131
|
-
"--wait",
|
|
132
|
-
is_flag=True,
|
|
131
|
+
"--wait/--no-wait",
|
|
133
132
|
default=True,
|
|
134
133
|
help="Wait for the endpoint to be ready after creation",
|
|
135
134
|
)
|
|
@@ -272,7 +271,7 @@ def fetch_and_print_hardware_options(client: Together, model: str | None, print_
|
|
|
272
271
|
|
|
273
272
|
@endpoints.command()
|
|
274
273
|
@click.argument("endpoint-id", required=True)
|
|
275
|
-
@click.option("--wait",
|
|
274
|
+
@click.option("--wait/--no-wait", default=True, help="Wait for the endpoint to stop")
|
|
276
275
|
@click.pass_obj
|
|
277
276
|
@handle_api_errors
|
|
278
277
|
def stop(client: Together, endpoint_id: str, wait: bool) -> None:
|
|
@@ -293,7 +292,7 @@ def stop(client: Together, endpoint_id: str, wait: bool) -> None:
|
|
|
293
292
|
|
|
294
293
|
@endpoints.command()
|
|
295
294
|
@click.argument("endpoint-id", required=True)
|
|
296
|
-
@click.option("--wait",
|
|
295
|
+
@click.option("--wait/--no-wait", default=True, help="Wait for the endpoint to start")
|
|
297
296
|
@click.pass_obj
|
|
298
297
|
@handle_api_errors
|
|
299
298
|
def start(client: Together, endpoint_id: str, wait: bool) -> None:
|
|
@@ -70,9 +70,6 @@ class FinetuneEventLevels(str, Enum):
|
|
|
70
70
|
INFO = "Info"
|
|
71
71
|
WARNING = "Warning"
|
|
72
72
|
ERROR = "Error"
|
|
73
|
-
LEGACY_INFO = "info"
|
|
74
|
-
LEGACY_IWARNING = "warning"
|
|
75
|
-
LEGACY_IERROR = "error"
|
|
76
73
|
|
|
77
74
|
|
|
78
75
|
class FinetuneEvent(BaseModel):
|
|
@@ -85,7 +82,7 @@ class FinetuneEvent(BaseModel):
|
|
|
85
82
|
# created at datetime stamp
|
|
86
83
|
created_at: Union[str, None] = None
|
|
87
84
|
# event log level
|
|
88
|
-
level: Union[FinetuneEventLevels, None] = None
|
|
85
|
+
level: Union[FinetuneEventLevels, str, None] = None
|
|
89
86
|
# event message string
|
|
90
87
|
message: Union[str, None] = None
|
|
91
88
|
# event type
|
|
@@ -120,7 +117,20 @@ class LoRATrainingType(BaseModel):
|
|
|
120
117
|
type: Literal["Lora"] = "Lora"
|
|
121
118
|
|
|
122
119
|
|
|
123
|
-
|
|
120
|
+
class UnknownTrainingType(BaseModel):
|
|
121
|
+
"""
|
|
122
|
+
Catch-all for unknown training types (forward compatibility).
|
|
123
|
+
Accepts any training type not explicitly defined.
|
|
124
|
+
"""
|
|
125
|
+
|
|
126
|
+
type: str
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
TrainingType: TypeAlias = Union[
|
|
130
|
+
FullTrainingType,
|
|
131
|
+
LoRATrainingType,
|
|
132
|
+
UnknownTrainingType,
|
|
133
|
+
]
|
|
124
134
|
|
|
125
135
|
|
|
126
136
|
class FinetuneFullTrainingLimits(BaseModel):
|
|
@@ -163,7 +173,19 @@ class TrainingMethodDPO(BaseModel):
|
|
|
163
173
|
simpo_gamma: Union[float, None] = None
|
|
164
174
|
|
|
165
175
|
|
|
166
|
-
|
|
176
|
+
class TrainingMethodUnknown(BaseModel):
|
|
177
|
+
"""
|
|
178
|
+
Catch-all for unknown training methods (forward compatibility).
|
|
179
|
+
Accepts any training method not explicitly defined.
|
|
180
|
+
"""
|
|
181
|
+
|
|
182
|
+
method: str
|
|
183
|
+
|
|
184
|
+
TrainingMethod: TypeAlias = Union[
|
|
185
|
+
TrainingMethodSFT,
|
|
186
|
+
TrainingMethodDPO,
|
|
187
|
+
TrainingMethodUnknown,
|
|
188
|
+
]
|
|
167
189
|
|
|
168
190
|
|
|
169
191
|
class FinetuneTrainingLimits(BaseModel):
|
|
@@ -175,31 +197,67 @@ class FinetuneTrainingLimits(BaseModel):
|
|
|
175
197
|
|
|
176
198
|
|
|
177
199
|
class LinearLRSchedulerArgs(BaseModel):
|
|
200
|
+
"""
|
|
201
|
+
Linear learning rate scheduler arguments
|
|
202
|
+
"""
|
|
203
|
+
|
|
178
204
|
min_lr_ratio: Union[float, None] = 0.0
|
|
179
205
|
|
|
180
206
|
|
|
181
207
|
class CosineLRSchedulerArgs(BaseModel):
|
|
208
|
+
"""
|
|
209
|
+
Cosine learning rate scheduler arguments
|
|
210
|
+
"""
|
|
211
|
+
|
|
182
212
|
min_lr_ratio: Union[float, None] = 0.0
|
|
183
213
|
num_cycles: Union[float, None] = 0.5
|
|
184
214
|
|
|
185
215
|
|
|
186
216
|
class LinearLRScheduler(BaseModel):
|
|
217
|
+
"""
|
|
218
|
+
Linear learning rate scheduler
|
|
219
|
+
"""
|
|
220
|
+
|
|
187
221
|
lr_scheduler_type: Literal["linear"] = "linear"
|
|
188
222
|
lr_scheduler_args: Union[LinearLRSchedulerArgs, None] = None
|
|
189
223
|
|
|
190
224
|
|
|
191
225
|
class CosineLRScheduler(BaseModel):
|
|
226
|
+
"""
|
|
227
|
+
Cosine learning rate scheduler
|
|
228
|
+
"""
|
|
229
|
+
|
|
192
230
|
lr_scheduler_type: Literal["cosine"] = "cosine"
|
|
193
231
|
lr_scheduler_args: Union[CosineLRSchedulerArgs, None] = None
|
|
194
232
|
|
|
195
233
|
|
|
196
|
-
# placeholder for old fine-tuning jobs with no lr_scheduler_type specified
|
|
197
234
|
class EmptyLRScheduler(BaseModel):
|
|
235
|
+
"""
|
|
236
|
+
Empty learning rate scheduler
|
|
237
|
+
|
|
238
|
+
Placeholder for old fine-tuning jobs with no lr_scheduler_type specified
|
|
239
|
+
"""
|
|
240
|
+
|
|
198
241
|
lr_scheduler_type: Literal[""]
|
|
199
242
|
lr_scheduler_args: None = None
|
|
200
243
|
|
|
244
|
+
class UnknownLRScheduler(BaseModel):
|
|
245
|
+
"""
|
|
246
|
+
Unknown learning rate scheduler
|
|
247
|
+
|
|
248
|
+
Catch-all for unknown LR scheduler types (forward compatibility)
|
|
249
|
+
"""
|
|
250
|
+
|
|
251
|
+
lr_scheduler_type: str
|
|
252
|
+
lr_scheduler_args: Optional[Any] = None
|
|
253
|
+
|
|
201
254
|
|
|
202
|
-
FinetuneLRScheduler: TypeAlias = Union[
|
|
255
|
+
FinetuneLRScheduler: TypeAlias = Union[
|
|
256
|
+
LinearLRScheduler,
|
|
257
|
+
CosineLRScheduler,
|
|
258
|
+
EmptyLRScheduler,
|
|
259
|
+
UnknownLRScheduler,
|
|
260
|
+
]
|
|
203
261
|
|
|
204
262
|
|
|
205
263
|
class FinetuneResponse(BaseModel):
|
|
@@ -213,8 +271,8 @@ class FinetuneResponse(BaseModel):
|
|
|
213
271
|
created_at: datetime
|
|
214
272
|
"""Creation timestamp of the fine-tune job"""
|
|
215
273
|
|
|
216
|
-
status: Optional[FinetuneJobStatus] = None
|
|
217
|
-
"""Status of the fine-tune job"""
|
|
274
|
+
status: Optional[Union[FinetuneJobStatus, str]] = None
|
|
275
|
+
"""Status of the fine-tune job (accepts known enum values or string for forward compatibility)"""
|
|
218
276
|
|
|
219
277
|
updated_at: datetime
|
|
220
278
|
"""Last update timestamp of the fine-tune job"""
|
|
@@ -222,8 +280,8 @@ class FinetuneResponse(BaseModel):
|
|
|
222
280
|
batch_size: Optional[int] = None
|
|
223
281
|
"""Batch size used for training"""
|
|
224
282
|
|
|
225
|
-
events: Optional[List[FinetuneEvent]] = None
|
|
226
|
-
"""Events related to this fine-tune job"""
|
|
283
|
+
events: Optional[List[Union[FinetuneEvent, str]]] = None
|
|
284
|
+
"""Events related to this fine-tune job (accepts known enum values or string for forward compatibility)"""
|
|
227
285
|
|
|
228
286
|
from_checkpoint: Optional[str] = None
|
|
229
287
|
"""Checkpoint used to continue training"""
|
|
@@ -361,7 +419,7 @@ class FinetuneRequest(BaseModel):
|
|
|
361
419
|
# training learning rate
|
|
362
420
|
learning_rate: float
|
|
363
421
|
# learning rate scheduler type and args
|
|
364
|
-
lr_scheduler: Union[
|
|
422
|
+
lr_scheduler: Union[FinetuneLRScheduler, None] = None
|
|
365
423
|
# learning rate warmup ratio
|
|
366
424
|
warmup_ratio: float
|
|
367
425
|
# max gradient norm
|
|
@@ -387,7 +445,7 @@ class FinetuneRequest(BaseModel):
|
|
|
387
445
|
# training type
|
|
388
446
|
training_type: Union[TrainingType, None] = None
|
|
389
447
|
# training method
|
|
390
|
-
training_method:
|
|
448
|
+
training_method: TrainingMethod = Field(default_factory=TrainingMethodSFT)
|
|
391
449
|
# from step
|
|
392
450
|
from_checkpoint: Union[str, None] = None
|
|
393
451
|
from_hf_model: Union[str, None] = None
|
|
@@ -291,7 +291,7 @@ class FineTuningResource(SyncAPIResource):
|
|
|
291
291
|
self,
|
|
292
292
|
id: str,
|
|
293
293
|
*,
|
|
294
|
-
force: bool,
|
|
294
|
+
force: bool | Omit = omit,
|
|
295
295
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
296
296
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
297
297
|
extra_headers: Headers | None = None,
|
|
@@ -374,7 +374,7 @@ class FineTuningResource(SyncAPIResource):
|
|
|
374
374
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
375
375
|
) -> BinaryAPIResponse:
|
|
376
376
|
"""
|
|
377
|
-
|
|
377
|
+
Receive a compressed fine-tuned model or checkpoint.
|
|
378
378
|
|
|
379
379
|
Args:
|
|
380
380
|
ft_id: Fine-tune ID to download. A string that starts with `ft-`.
|
|
@@ -732,7 +732,7 @@ class AsyncFineTuningResource(AsyncAPIResource):
|
|
|
732
732
|
self,
|
|
733
733
|
id: str,
|
|
734
734
|
*,
|
|
735
|
-
force: bool,
|
|
735
|
+
force: bool | Omit = omit,
|
|
736
736
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
737
737
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
738
738
|
extra_headers: Headers | None = None,
|
|
@@ -815,7 +815,7 @@ class AsyncFineTuningResource(AsyncAPIResource):
|
|
|
815
815
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
816
816
|
) -> AsyncBinaryAPIResponse:
|
|
817
817
|
"""
|
|
818
|
-
|
|
818
|
+
Receive a compressed fine-tuned model or checkpoint.
|
|
819
819
|
|
|
820
820
|
Args:
|
|
821
821
|
ft_id: Fine-tune ID to download. A string that starts with `ft-`.
|
|
@@ -20,7 +20,6 @@ from .._response import (
|
|
|
20
20
|
)
|
|
21
21
|
from .._base_client import make_request_options
|
|
22
22
|
from ..types.video_job import VideoJob
|
|
23
|
-
from ..types.video_create_response import VideoCreateResponse
|
|
24
23
|
|
|
25
24
|
__all__ = ["VideosResource", "AsyncVideosResource"]
|
|
26
25
|
|
|
@@ -68,7 +67,7 @@ class VideosResource(SyncAPIResource):
|
|
|
68
67
|
extra_query: Query | None = None,
|
|
69
68
|
extra_body: Body | None = None,
|
|
70
69
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
71
|
-
) ->
|
|
70
|
+
) -> VideoJob:
|
|
72
71
|
"""
|
|
73
72
|
Create a video
|
|
74
73
|
|
|
@@ -139,7 +138,7 @@ class VideosResource(SyncAPIResource):
|
|
|
139
138
|
options=make_request_options(
|
|
140
139
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
141
140
|
),
|
|
142
|
-
cast_to=
|
|
141
|
+
cast_to=VideoJob,
|
|
143
142
|
)
|
|
144
143
|
|
|
145
144
|
def retrieve(
|
|
@@ -219,7 +218,7 @@ class AsyncVideosResource(AsyncAPIResource):
|
|
|
219
218
|
extra_query: Query | None = None,
|
|
220
219
|
extra_body: Body | None = None,
|
|
221
220
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
222
|
-
) ->
|
|
221
|
+
) -> VideoJob:
|
|
223
222
|
"""
|
|
224
223
|
Create a video
|
|
225
224
|
|
|
@@ -290,7 +289,7 @@ class AsyncVideosResource(AsyncAPIResource):
|
|
|
290
289
|
options=make_request_options(
|
|
291
290
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
292
291
|
),
|
|
293
|
-
cast_to=
|
|
292
|
+
cast_to=VideoJob,
|
|
294
293
|
)
|
|
295
294
|
|
|
296
295
|
async def retrieve(
|
|
@@ -46,7 +46,6 @@ from .batch_create_response import BatchCreateResponse as BatchCreateResponse
|
|
|
46
46
|
from .image_generate_params import ImageGenerateParams as ImageGenerateParams
|
|
47
47
|
from .job_retrieve_response import JobRetrieveResponse as JobRetrieveResponse
|
|
48
48
|
from .model_upload_response import ModelUploadResponse as ModelUploadResponse
|
|
49
|
-
from .video_create_response import VideoCreateResponse as VideoCreateResponse
|
|
50
49
|
from .endpoint_create_params import EndpointCreateParams as EndpointCreateParams
|
|
51
50
|
from .endpoint_list_response import EndpointListResponse as EndpointListResponse
|
|
52
51
|
from .endpoint_update_params import EndpointUpdateParams as EndpointUpdateParams
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing_extensions import
|
|
5
|
+
from typing_extensions import TypedDict
|
|
6
6
|
|
|
7
7
|
__all__ = ["FineTuningDeleteParams"]
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class FineTuningDeleteParams(TypedDict, total=False):
|
|
11
|
-
force:
|
|
11
|
+
force: bool
|
|
@@ -97,6 +97,13 @@ class TestFineTuning:
|
|
|
97
97
|
|
|
98
98
|
@parametrize
|
|
99
99
|
def test_method_delete(self, client: Together) -> None:
|
|
100
|
+
fine_tuning = client.fine_tuning.delete(
|
|
101
|
+
id="id",
|
|
102
|
+
)
|
|
103
|
+
assert_matches_type(FineTuningDeleteResponse, fine_tuning, path=["response"])
|
|
104
|
+
|
|
105
|
+
@parametrize
|
|
106
|
+
def test_method_delete_with_all_params(self, client: Together) -> None:
|
|
100
107
|
fine_tuning = client.fine_tuning.delete(
|
|
101
108
|
id="id",
|
|
102
109
|
force=True,
|
|
@@ -107,7 +114,6 @@ class TestFineTuning:
|
|
|
107
114
|
def test_raw_response_delete(self, client: Together) -> None:
|
|
108
115
|
response = client.fine_tuning.with_raw_response.delete(
|
|
109
116
|
id="id",
|
|
110
|
-
force=True,
|
|
111
117
|
)
|
|
112
118
|
|
|
113
119
|
assert response.is_closed is True
|
|
@@ -119,7 +125,6 @@ class TestFineTuning:
|
|
|
119
125
|
def test_streaming_response_delete(self, client: Together) -> None:
|
|
120
126
|
with client.fine_tuning.with_streaming_response.delete(
|
|
121
127
|
id="id",
|
|
122
|
-
force=True,
|
|
123
128
|
) as response:
|
|
124
129
|
assert not response.is_closed
|
|
125
130
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
@@ -134,7 +139,6 @@ class TestFineTuning:
|
|
|
134
139
|
with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
|
|
135
140
|
client.fine_tuning.with_raw_response.delete(
|
|
136
141
|
id="",
|
|
137
|
-
force=True,
|
|
138
142
|
)
|
|
139
143
|
|
|
140
144
|
@parametrize
|
|
@@ -378,6 +382,13 @@ class TestAsyncFineTuning:
|
|
|
378
382
|
|
|
379
383
|
@parametrize
|
|
380
384
|
async def test_method_delete(self, async_client: AsyncTogether) -> None:
|
|
385
|
+
fine_tuning = await async_client.fine_tuning.delete(
|
|
386
|
+
id="id",
|
|
387
|
+
)
|
|
388
|
+
assert_matches_type(FineTuningDeleteResponse, fine_tuning, path=["response"])
|
|
389
|
+
|
|
390
|
+
@parametrize
|
|
391
|
+
async def test_method_delete_with_all_params(self, async_client: AsyncTogether) -> None:
|
|
381
392
|
fine_tuning = await async_client.fine_tuning.delete(
|
|
382
393
|
id="id",
|
|
383
394
|
force=True,
|
|
@@ -388,7 +399,6 @@ class TestAsyncFineTuning:
|
|
|
388
399
|
async def test_raw_response_delete(self, async_client: AsyncTogether) -> None:
|
|
389
400
|
response = await async_client.fine_tuning.with_raw_response.delete(
|
|
390
401
|
id="id",
|
|
391
|
-
force=True,
|
|
392
402
|
)
|
|
393
403
|
|
|
394
404
|
assert response.is_closed is True
|
|
@@ -400,7 +410,6 @@ class TestAsyncFineTuning:
|
|
|
400
410
|
async def test_streaming_response_delete(self, async_client: AsyncTogether) -> None:
|
|
401
411
|
async with async_client.fine_tuning.with_streaming_response.delete(
|
|
402
412
|
id="id",
|
|
403
|
-
force=True,
|
|
404
413
|
) as response:
|
|
405
414
|
assert not response.is_closed
|
|
406
415
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
@@ -415,7 +424,6 @@ class TestAsyncFineTuning:
|
|
|
415
424
|
with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
|
|
416
425
|
await async_client.fine_tuning.with_raw_response.delete(
|
|
417
426
|
id="",
|
|
418
|
-
force=True,
|
|
419
427
|
)
|
|
420
428
|
|
|
421
429
|
@parametrize
|