Transmettre vos propres médias

Transmettez à Morphic vos propres images, vidéos, fichiers audio et documents par URL, dans n’importe quel champ qui accepte des médias.

Chaque champ qui accepte des médias (image_asset_id, reference_video_asset_ids, asset_id, et tout autre *_asset_id ou *_asset_ids) prend soit un identifiant d’asset de votre bibliothèque, soit une URL HTTPS publique du fichier. Vous pouvez les combiner librement dans un même appel. Il n’y a pas d’étape d’envoi distincte.

curl -s https://mcp.morphic.com/v1/direct/tools/edit_image \
  -H "Authorization: Bearer $MORPHIC_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input": {"prompt": "Put the bike on a beach at sunset", "image_asset_ids": ["https://cdn.example.com/products/bike.jpg"], "project_id": "01928f4e-…"}}'

Avant l’exécution de l’outil, chaque URL est récupérée et ajoutée à project_id comme asset envoyé, gratuitement. L’outil la traite ensuite comme n’importe quel autre asset. Une URL nécessite l’autorisation assets:write, et chaque URL distincte est décomptée comme un appel du quota des appels gratuits.

  • L’URL doit être en HTTPS sur un hôte public et servir le fichier lui-même, pas une page web.
  • Pour un fichier de votre propre stockage, transmettez une URL signée (un GET présigné S3, une URL signée GCS). Elle doit rester valide jusqu’à la réponse de l’appel.
  • Les images, vidéos, fichiers audio et documents (.pdf, .txt, .md, .srt) sont acceptés. Le contenu du fichier est analysé : l’extension n’est donc jamais prise pour acquise.
  • Un fichier média peut atteindre 100 Mo, ou la limite d’envoi de votre forfait si elle est inférieure, et doit arriver en moins de 25 secondes.
  • Une URL citée deux fois dans un même appel n’est récupérée qu’une fois. Un appel ultérieur la récupère à nouveau ; pour réutiliser un fichier sans le récupérer de nouveau, transmettez l’identifiant d’asset que list_assets affiche pour lui.
  • L’entrée de l’appel est validée par rapport au schéma de l’outil avant qu’aucune URL ne soit récupérée. Un appel mal formé renvoie 400 invalid_request et ne récupère rien.
  • Une URL impossible à récupérer ou refusée renvoie 422 tool_refused en nommant le champ, par exemple input.image_asset_ids[0]: The URL must use https. Rien n’est lancé ni facturé. Un fichier déjà ajouté reste dans le projet, comme lorsque l’outil lui-même refuse l’appel ensuite.
  • analyze_video et analyze_audio acceptent project_id uniquement pour cela : envoyez-le lorsqu’un champ média contient une URL.
  • Les étapes de plan_media acceptent aussi des URL, chacune ajoutée au project_id de son étape : un devis ajoute donc ces fichiers à votre bibliothèque. Transmettez aux étapes que vous exécutez les identifiants d’asset que list_assets affiche alors, plutôt que les URL, pour ne récupérer chaque fichier qu’une fois.

Si vous rencontrez le moindre problème ou si vous avez des questions, n’hésitez pas à nous contacter. Nous serons ravis de vous aider. Écrivez-nous à support@morphic.com.