/* eslint-disable react/display-name */ "use client"; import ExploreModelItemHeader from "../ExploreModelItemHeader"; import ModelVersionList from "../ModelVersionList"; import { Fragment, forwardRef, useEffect, useState } from "react"; import SimpleTag from "../SimpleTag"; import { displayDate } from "@/_utils/datetime"; import { Product } from "@/_models/Product"; import useGetMostSuitableModelVersion from "@/_hooks/useGetMostSuitableModelVersion"; type Props = { model: Product; }; const ExploreModelItem = forwardRef(({ model }, ref) => { const [show, setShow] = useState(false); const { availableVersions } = model; const { suitableModel, getMostSuitableModelVersion } = useGetMostSuitableModelVersion(); useEffect(() => { getMostSuitableModelVersion(availableVersions); }, [availableVersions]); if (!suitableModel) { return null; } return (
Model Format
GGUF
Hardware Compatibility
{/* */}
Release Date
{displayDate(model.releaseDate)}
Expected Performance
{/* */}
About {model.longDescription}
Tags
{model.tags.map((tag) => ( // @ts-ignore ))}
{model.availableVersions?.length > 0 && ( {show && ( )} )}
); }); export default ExploreModelItem;