package cn.iocoder.yudao.module.llm.service.http.vo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class ModelList {

    private String object;
    private List<ModelData> data;
    private String detail;

    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public static class ModelData {
        private String id;
        private String object;
        private long created;
        private String owned_by;
        private String model_type;
        private String address;
        private List<String> accelerators;
        private String model_name;
        // For the "bge-small-zh-v1.5" model
        private Integer dimensions;
        private Integer max_tokens;
        private List<String> language;
        private String model_revision;
        private int replica;
        // For the "qwen2.5-instruct" model
        private List<String> model_lang;
        private List<String> model_ability;
        private String model_description;
        private String model_format;
        private String model_size_in_billions;
        private String model_family;
        private String quantization;
        private String model_hub;
        private Object revision; // Can be null, so we use Object type
        private Integer context_length;

    }
}
