Star-head not working for me. The other wingmen work fine.
Closed this issue · 13 comments
Don't know if this is a temporary thing due to an api being down or something, but I get this response when trying to request anything from star-head.
Running from source as per my previous issue was adviced. Didn't work with the .exe either btw.
Björn
Exception in thread Thread-7 (run_async_process):
Traceback (most recent call last):
File "C:\Users\bjorn\AppData\Local\Programs\Python\Python310\lib\threading.py", line 1009, in _bootstrap_inner
self.run()
File "C:\Users\bjorn\AppData\Local\Programs\Python\Python310\lib\threading.py", line 946, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\bjorn\Documents\wingman-ai\main.py", line 91, in run_async_process
loop.run_until_complete(
File "C:\Users\bjorn\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 641, in run_until_complete
return future.result()
File "C:\Users\bjorn\Documents\wingman-ai\wingmen\wingman.py", line 165, in process
process_result, instant_response = await self._get_response_for_transcript(
File "C:\Users\bjorn\Documents\wingman-ai\wingmen\open_ai_wingman.py", line 154, in _get_response_for_transcript
instant_response = await self._handle_tool_calls(tool_calls)
File "C:\Users\bjorn\Documents\wingman-ai\wingmen\open_ai_wingman.py", line 272, in _handle_tool_calls
) = await self._execute_command_by_function_call(
File "C:\Users\bjorn\Documents\wingman-ai\wingmen\star_head_wingman.py", line 102, in _execute_command_by_function_call
function_response = self._get_best_trading_route(**function_args)
File "C:\Users\bjorn\Documents\wingman-ai\wingmen\star_head_wingman.py", line 138, in _get_best_trading_route
cargo, qd = self._get_ship_details(ship)
File "C:\Users\bjorn\Documents\wingman-ai\wingmen\star_head_wingman.py", line 193, in _get_ship_details
qd = next(
File "C:\Users\bjorn\Documents\wingman-ai\wingmen\star_head_wingman.py", line 197, in <genexpr>
for item in loadout.get("data")
AttributeError: 'NoneType' object has no attribute 'get'
We found the following entries in the FAQ which you may find helpful:
- StarHead API Issues
- Configuring Wingman AI
- Wingman does not start
- How to change the audio device for output?
Feel free to close this issue if you found an answer in the FAQ. Otherwise, please give us a little time to review.
This is an automated reply, generated by FAQtory
Doesn't seem to be a DNS issue. I do get a 404 on https://api-test.star-head.de though.
ping api-test.star-head.de
Pinging api-test.star-head.de [185.216.177.187] with 32 bytes of data:
Reply from 185.216.177.187: bytes=32 time=33ms TTL=52
Reply from 185.216.177.187: bytes=32 time=31ms TTL=52
Reply from 185.216.177.187: bytes=32 time=30ms TTL=52
Reply from 185.216.177.187: bytes=32 time=30ms TTL=52
Ping statistics for 185.216.177.187:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 30ms, Maximum = 33ms, Average = 31ms
Yeah, the 404 is normal. Could you post a screenshot of your Wingman Terminal?
All that was in the terminal it is in my first post. Only thing that was missing is "python main.py" to start it.
No, I mean the conversation history. My guess is that it did not transcribe the function call params (ship, location etc.) correctly and then the API throws an error because we're calling it with an invalid ship name etc.
I tried a couple of things and made screenshot. It seems that "Spirit C1" or "C1 Spirit" doesn't work at all. With cutlass black it worked a couple of times, but I also got one that didn't work. Maybe the AI is not very good at extracting data from my request?
Also, after I get an error once, it gives errors right away. See the screenshot with the red bar.
It doesn't ask for my budget btw in the examples where it worked.
I can give it my budget after the initial advice to get a more fitting advice, but then again, I don't understand the advice to go to grim hex while you get more profit by going to New Babbage for gold and it's much closer. But that's a star-head discussion I guess.
Recording started
Recording stopped(You): I'm in a cutlass black at New Babbage and I'm looking for trade advice.
<< (star-head): I recommend buying Astatine at Shubin Mining Facility SM0-10 on microTech for 7.03 credits per item and selling it at Devlin Scrap & Salvage on Euterpe for 9 credits per item. This trade would yield a profit of approximately 1400.67 credits. The estimated travel time is 604 minutes to cover the distance of 107809 kilometers.
Recording started
Recording stopped
(You): And what if I want to spend 10 million off a USC?
<< (star-head): I recommend buying Gold at Shubin Mining Facility SM0-18 on microTech for 59.39 credits per item and selling it at the Admin Office on Grim HEX for 67.04 credits per item. This trade would yield a profit of approximately 35,190 credits. The estimated travel time is 944 minutes to cover the distance of 57,489,344 kilometers.
Are you using gpt-4 for the StarHead wingman as configured in our example config? Because multi-param function calls don't work well with gpt-3.5. It should definitely ask for the budget unless you have given it that earlier in the conversation - then it will remember it. Did you add a payment method and added or spent at least $1 at OpenAI? You don't have access to all the features before that.
Maybe the StarHead API doesn't know about this Spirit C1
(yet)? You can debug the code and see if it's in ship_names
.
try saying "10 million alpha uac" or "I have 10 million bucks to spend"
All seems a bit unreliable and hard to pin down. Could be an issue with the SH API, with OpenAI or Wingman. Weird. My workaround for now would be: Join our Discord server and use the community UEX Corp Wingman
. It has more capabilities and is a bit more stable. You'll find it in the #share-your-wingmen channel.
Will do that.
I'm using GPT4 btw and it's working for another application that I have been using for months. Also I do get replies sometimes but then it still fails on the data request from star-head. In the example below it got my ship name wrong (in a pretty strange way), but it continued to work untill it had all the data to do the api call.
However, in this example it got the ship name right but failed right away:
Anyway, I'll be in the discord shortly! Thanks for the great app. These issues are to be expected at the beginning.