openai/openai-dotnet

Public

mirrored from https://github.com/openai/openai-dotnetAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.0.0-beta.1

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

src/Custom/Assistants/Internal/InternalMessageImageUrlContent.cs

41lines · modecode

1using System;
2
3namespace OpenAI.Assistants;
4
5/// <summary>
6/// Represents an item of image URL content within an Assistants API message.
7/// </summary>
8/// <remarks>
9/// Use the <see cref="MessageContent.FromImageUrl(Uri,MessageImageDetail?)"/> method to
10/// create an instance of this type.
11/// </remarks>
12[CodeGenModel("MessageContentImageUrlObject")]
13[CodeGenSuppress("MessageImageUrlContent", typeof(InternalMessageContentImageUrlObjectImageUrl))]
14internal partial class InternalMessageImageUrlContent
15{
16 [CodeGenMember("Type")]
17 private string _type = "image_url";
18
19 [CodeGenMember("ImageUrl")]
20 internal InternalMessageContentImageUrlObjectImageUrl _imageUrl;
21
22 /// <inheritdoc cref="InternalMessageContentImageUrlObjectImageUrl.Url"/>
23 public Uri InternalUrl => _imageUrl.Url;
24
25 /// <inheritdoc cref="InternalMessageContentImageUrlObjectImageUrl.Detail"/>
26 public MessageImageDetail? InternalDetail => _imageUrl.Detail?.ToMessageImageDetail();
27
28 /// <summary> Initializes a new instance of <see cref="InternalMessageImageUrlContent"/>. </summary>
29 internal InternalMessageImageUrlContent(Uri url, MessageImageDetail? detail = null)
30 : this(new InternalMessageContentImageUrlObjectImageUrl(url, detail?.ToSerialString(), null))
31 {}
32
33 /// <summary> Initializes a new instance of <see cref="InternalMessageImageUrlContent"/>. </summary>
34 /// <param name="imageUrl"></param>
35 /// <exception cref="ArgumentNullException"> <paramref name="imageUrl"/> is null. </exception>
36 internal InternalMessageImageUrlContent(InternalMessageContentImageUrlObjectImageUrl imageUrl)
37 {
38 Argument.AssertNotNull(imageUrl, nameof(imageUrl));
39 _imageUrl = imageUrl;
40 }
41}
42