qwen2.5-coder-14b-instruct@iq4_xs Quantized Model Fails to Follow Instructions on LMStudio

#1
by anrgct - opened

My device is an M2 Max MacBook. I found a problem while using LMStudio: there is a huge difference between iq4_xs and q4_k_m of Qwen2.5-Coder-14B. I suspect there is an issue with the iQuant quantization. I ran it in LMStudio with the default parameters, and the two answers differ greatly; iq4_xs completely did not follow the instructions in its response.

My qustion:

/Users/anrgct/workspace/genaiscript/packages/core/src/server/endpoint.ts\nimport { Request, Response, Router, send, type } from \"microrouter\"\nimport { createServer } from \"../server\"\nimport { Project } from \"../server/messages\"\nimport { createEndpoint } from \"../endpoint\"\n\nconst server = createServer()\n\nexport const endpointRouter = Router()\n\nendpointRouter.post(\n \"/endpoint\",\n type(\"json\"),\n async (req: Request, res: Response) => {\n const { url, method, headers, body } = req\n const project: Project = res.locals.project\n const response = await server.handleEndpoint({\n url: url as any,\n method: method as any,\n headers: headers as any,\n body,\n project,\n })\n if (!response) return res.status(404).end()\n return res.status(response.status).body(response.body)\n }\n)\n\nendpointRouter.post(\n \"/endpoint/:id\",\n type(\"json\"),\n async (req: Request, res: Response) => {\n const { url, method, headers, body } = req\n const project: Project = res.locals.project\n const endpoint = createEndpoint(project, req.params.id, false)\n if (!endpoint) return res.status(404).end()\n const response = await server.handleEndpoint({\n url: url as any,\n method: method as any,\n headers: headers as any,\n body,\n endpoint,\n project,\n })\n if (!response) return res.status(404).end()\n return res.status(response.status).body(response.body)\n }\n)\n\nendpointRouter.get(\n \"/endpoint/:id\",\n async (req: Request, res: Response) => {\n const project: Project = res.locals.project\n const endpoint = createEndpoint(project, req.params.id, false)\n if (!endpoint) return res.status(404).end()\n return send(res, 200, endpoint)\n }\n)\n\nendpointRouter.get(\n \"/endpoint\",\n async (req: Request, res: Response) => {\n const project: Project = res.locals.project\n return send(\n res,\n 200,\n project.endpoints.map((id) => createEndpoint(project, id, true))\n )\n }\n)\n\nendpointRouter.delete(\n \"/endpoint/:id\",\n async (req: Request, res: Response) => {\n const project: Project = res.locals.project\n const endpoint = createEndpoint(project, req.params.id, false)\n if (!endpoint) return res.status(404).end()\n endpoint.delete()\n return send(res, 200)\n }\n)\n\n\n\nYou are an expert in reading code. Please abstractly summarize the above code using concise, non-continuous, selective, and key-focused English phrases of 1-3 words, with each phrase followed by parentheses containing 1-2 related variable/method names for brief indexing. Include many phrases separated by commas, and output as a single paragraph without line breaks.


q4_k_m: Router setup (endpointRouter), POST request handling (/endpoint), JSON type checking (type("json")), server interaction (createServer()), endpoint creation (createEndpoint()), response processing (server.handleEndpoint()), project access (res.locals.project), GET requests for endpoints (/endpoint/:id, /endpoint), DELETE request for endpoints (/endpoint/:id).

iq4_sx: /Users/anrgct/workspace/genaiscript/packages/core/src/server/project.ts\nimport { ServerRequest } from \"../server\"\nimport { Endpoint, ProjectId } from "../endpoint"\n\nexport interface Project {\n id: ProjectId;\n endpoints?: Array<Endpoint>;\n}\n\nlet projects = new Map<ProjectId, Project>();\n\n// export function getProject(projectId: string) {\n// if (!projects.has(projectId)) {\n// // create project\n// }\n// const project = projects.get(projectId);\n// return project;\n// }\n\nexport async function handleProject(request: ServerRequest, next?: () => Promise<Response>) {\n const { projectId } = request;\n if (projectId) {\n let project = await getProject(projectId);\n request.project = project;\n console.log(\"project\", project)\n return project;\n }\n}\n\nexport async function createProject(): Promise<Project> {\n // TODO: Implement the logic to create a new project.\n const projectId = \"new_project_id\"; // Replace this with your own implementation for generating unique IDs.\n let project: Project = { id: projectId };\n projects.set(projectId, project);\n\n return project;\n}\n\nexport async function getProject(id: string): Promise<Project> {\n if (!projects.has(id)) {\n const newProject = await createProject();\n projects.set(newProject.id, newProject);\n }\n return projects.get(id) || ({} as Project);;\n}\n\n\nYou are an expert in reading code. Please abstractly summarize the above code using concise, non-continuous, selective, and key-focused English phrases of 1-3 words, with each phrase followed by parentheses containing 1-2 related variable/method names for brief indexing. Include many phrases

This isn't an instruction following model, it's meant for completion only

Use this for instruction following:

https://huggingface.co/bartowski/Qwen2.5-Coder-14B-Instruct-GGUF

You are right, I downloaded the base model, sorry for the mistake.

anrgct changed discussion status to closed

Sign up or log in to comment