copyWith method

CreateMessageRequestParams copyWith({
  1. CreateMessageRequestParamsMeta? meta,
  2. CreateMessageRequestParamsIncludeContext? includeContext,
  3. int? maxTokens,
  4. List<SamplingMessage>? messages,
  5. Map<String, Object?>? metadata,
  6. ModelPreferences? modelPreferences,
  7. List<String>? stopSequences,
  8. String? systemPrompt,
  9. TaskMetadata? task,
  10. num? temperature,
  11. ToolChoice? toolChoice,
  12. List<Tool>? tools,
})

A copy with the given properties replaced; everything else, unknown keys included, is kept.

Implementation

CreateMessageRequestParams copyWith({
  CreateMessageRequestParamsMeta? meta,
  CreateMessageRequestParamsIncludeContext? includeContext,
  int? maxTokens,
  List<SamplingMessage>? messages,
  Map<String, Object?>? metadata,
  ModelPreferences? modelPreferences,
  List<String>? stopSequences,
  String? systemPrompt,
  TaskMetadata? task,
  num? temperature,
  ToolChoice? toolChoice,
  List<Tool>? tools,
}) =>
    CreateMessageRequestParams.fromJson({
      ...toJson(),
      if (meta != null) '_meta': $encode(meta),
      if (includeContext != null) 'includeContext': $encode(includeContext),
      if (maxTokens != null) 'maxTokens': $encode(maxTokens),
      if (messages != null) 'messages': $encode(messages),
      if (metadata != null) 'metadata': $encode(metadata),
      if (modelPreferences != null) 'modelPreferences': $encode(modelPreferences),
      if (stopSequences != null) 'stopSequences': $encode(stopSequences),
      if (systemPrompt != null) 'systemPrompt': $encode(systemPrompt),
      if (task != null) 'task': $encode(task),
      if (temperature != null) 'temperature': $encode(temperature),
      if (toolChoice != null) 'toolChoice': $encode(toolChoice),
      if (tools != null) 'tools': $encode(tools),
    });