# Finetunes ## List Finetunes `ai.finetunes.list(FinetuneListParams**kwargs) -> FinetuneListResponse` **get** `/accounts/{account_id}/ai/finetunes` Lists all fine-tuning jobs created by the account, including status and metrics. ### Parameters - `account_id: str` ### Returns - `class FinetuneListResponse: …` - `id: str` - `created_at: datetime` - `model: str` - `modified_at: datetime` - `name: str` - `description: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) finetunes = client.ai.finetunes.list( account_id="023e105f4ecef8ad9ca31a8372d0c353", ) print(finetunes.id) ``` #### Response ```json { "result": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_at": "2019-12-27T18:11:19.117Z", "model": "model", "modified_at": "2019-12-27T18:11:19.117Z", "name": "name", "description": "description" }, "success": true } ``` ## Create a new Finetune `ai.finetunes.create(FinetuneCreateParams**kwargs) -> FinetuneCreateResponse` **post** `/accounts/{account_id}/ai/finetunes` Creates a new fine-tuning job for a Workers AI model using custom training data. ### Parameters - `account_id: str` - `model: str` - `name: str` - `description: Optional[str]` - `public: Optional[bool]` ### Returns - `class FinetuneCreateResponse: …` - `id: str` - `created_at: datetime` - `model: str` - `modified_at: datetime` - `name: str` - `public: bool` - `description: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) finetune = client.ai.finetunes.create( account_id="023e105f4ecef8ad9ca31a8372d0c353", model="model", name="name", ) print(finetune.id) ``` #### Response ```json { "result": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_at": "2019-12-27T18:11:19.117Z", "model": "model", "modified_at": "2019-12-27T18:11:19.117Z", "name": "name", "public": true, "description": "description" }, "success": true } ``` ## Domain Types ### Finetune List Response - `class FinetuneListResponse: …` - `id: str` - `created_at: datetime` - `model: str` - `modified_at: datetime` - `name: str` - `description: Optional[str]` ### Finetune Create Response - `class FinetuneCreateResponse: …` - `id: str` - `created_at: datetime` - `model: str` - `modified_at: datetime` - `name: str` - `public: bool` - `description: Optional[str]` # Assets ## Upload a Finetune Asset `ai.finetunes.assets.create(strfinetune_id, AssetCreateParams**kwargs) -> AssetCreateResponse` **post** `/accounts/{account_id}/ai/finetunes/{finetune_id}/finetune-assets` Uploads training data assets for a Workers AI fine-tuning job. ### Parameters - `account_id: str` - `finetune_id: str` - `file: Optional[FileTypes]` - `file_name: Optional[str]` ### Returns - `class AssetCreateResponse: …` - `success: bool` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) asset = client.ai.finetunes.assets.create( finetune_id="bc451aef-f723-4b26-a6b2-901afd2e7a8a", account_id="023e105f4ecef8ad9ca31a8372d0c353", ) print(asset.success) ``` #### Response ```json { "success": true } ``` ## Domain Types ### Asset Create Response - `class AssetCreateResponse: …` - `success: bool` # Public ## List Public Finetunes `ai.finetunes.public.list(PublicListParams**kwargs) -> SyncSinglePage[PublicListResponse]` **get** `/accounts/{account_id}/ai/finetunes/public` Lists publicly available fine-tuned models that can be used with Workers AI. ### Parameters - `account_id: str` - `limit: Optional[float]` Pagination Limit - `offset: Optional[float]` Pagination Offset - `order_by: Optional[str]` Order By Column Name ### Returns - `class PublicListResponse: …` - `id: str` - `created_at: datetime` - `model: str` - `modified_at: datetime` - `name: str` - `public: bool` - `description: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) page = client.ai.finetunes.public.list( account_id="023e105f4ecef8ad9ca31a8372d0c353", ) page = page.result[0] print(page.id) ``` #### Response ```json { "result": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_at": "2019-12-27T18:11:19.117Z", "model": "model", "modified_at": "2019-12-27T18:11:19.117Z", "name": "name", "public": true, "description": "description" } ], "success": true } ``` ## Domain Types ### Public List Response - `class PublicListResponse: …` - `id: str` - `created_at: datetime` - `model: str` - `modified_at: datetime` - `name: str` - `public: bool` - `description: Optional[str]`