Anyone using it with Hermes Agent?

#16
by moalimirinfinity - opened

Has anyone tried this as the main local model for Hermes Agent?

I have been using it with Hermes and to me this thing is capable but does need to be redirected from time to time. Currently running a 6bit-MTP MLX version with a 128k context window, served from a Mac Mini M4 24GB running MLX-Serve. Throughput is 10-13t/sec decode and prefill is 150-200t/sec.

I am a absolute beginner, so I don't have a clue yet as to what I could do to optimize my setup.

In the meantime, I have had it successfully vide-code me a python backend and a webportal to stream a Motion video capture and move stepper motors in the X an Y axis. I had to be specific about what I needed, told it it would need to build the python with hooks for direction control. I then asked it to build a webpage to access those hooks to use buttons to move the whole thing. It did have to re-do the webpage a few times to get the buttons to move the camera in the right direction, but it did it all by itself. I have done 0% of the code and it functions as I had imagined. It does need a few passed to make it look better, but to someone that does not code, this is huge.

I have used the prompts from guell00/VELUM-Coder to much success in this process. I told Hermes to remember this:

"Use this system prompt (it makes the model decrease hallucinations).

Before writing any code, plan out ALL the variables and functions, as well as the complete logic (code design) to be used.

In the reasoning phase, first define:

  • how the code will work (e.g., first I will declare the variables, then write function 1, then function 2...);
  • all variables;
  • all functions;
  • parameters;
  • return values;
  • types;
  • scopes.

Create an internal, fixed list of variables and functions before generating the code.

During generation:

  • use only the variables and functions that have already been planned;
  • do not invent new names mid-code;
  • do not rename symbols;
  • do not use a variable before defining it;
  • if you realize a new symbol is needed, stop, update the internal plan first, and only then continue;
  • maintain valid syntax for the language."

My second so far successful use case, I have a large collection of electronic components, mostly surface mount parts that would take me a long time to sort and organize these for future use or to sell. I told Hermes what I had and what I wanted. It had then built a pipeline to view a picture that I take of the part and drop into a directory, identify it by reading the silkscreen, looking for datasheets online to confirm the part and info and the populating a spreadsheet with this data. Shockingly this has worked very well. I have had to redirect a few times and my second batch of photos ran into issues bu doing too many at once. I noted the problem, told Hermes to scale back to a smaller batch, and it has worked! I have a spreadsheet now being populated with the info I asked for and I am once again gobsmacked.

Treat it like a ADHD child that occasionally gets distracted from time to time.

Sign up or log in to comment