small-cactus / M.I.L.E.S

M.I.L.E.S, a GPT-4-Turbo voice assistant, self-adapts its prompts and AI model, can play any Spotify song, adjusts system and Spotify volume, performs calculations, browses the web and internet, searches global weather, delivers date and time, autonomously chooses and retains long-term memories. Available for macOS and Windows.
https://github.com/small-cactus/M.I.L.E.S
MIT License
164 stars 25 forks source link

Can't complete setup on Apple M1 Mac Mini #24

Closed jackbaca closed 2 months ago

jackbaca commented 3 months ago

Hey this seems awesome! But I can't get it to install. I thought maybe it was because I'm on apple silicon but it looks like the wakeword module is causing it.

After finishing initial setup and you get the "wait for downloads screen" it never finishes. The log gives this error everytime the start downloads button is clicked.

Config Python Error: Traceback (most recent call last): File "/Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/config.py", line 1, in import openwakeword ModuleNotFoundError: No module named 'openwakeword' Config script exited with code 1

Desktop (please complete the following information):

small-cactus commented 3 months ago

Try pip3 install openwakeword and pip install openwakeword, also try to run the config file by itself

jackbaca commented 3 months ago

Thanks for the quick update man!

So I used the command pip3 install in the miles env. When I run it, it starts up the same as before with this Server started on http://localhost:3000 2024-07-20 08:38:13.988 Electron[31446:496057] WARNING: Secure coding is not enabled for restorable state! Enable secure coding by implementing NSApplicationDelegate.applicationSupportsSecureRestorableState: and returning YES. API keys are empty, initializing setup screen... stderr: Traceback (most recent call last): File "/Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/HomeAssistantUtils.py", line 100, in <module>

Then when I input the api keys in setup I no longer get anything about openwakeword but instead this: `

stderr: home_assistant.print_entities() File "/Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/HomeAssistantUtils.py", line 82, in print_entities response = self.session.get(f"{self.url}/api/states", headers=headers) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/requests/sessions.py", line 602, in get return self.request("GET", url, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/requests/sessions.py", line 575, in request prep = self.prepare_request(req) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/requests/sessions.py", line 484, in prepare_request p.prepare( File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/requests/models.py", line 367, in prepare

stderr: self.prepare_url(url, params)

stderr: File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/requests/models.py", line 438, in prepare_url

stderr: raise MissingSchema( requests.exceptions.MissingSchema: Invalid URL 'none/api/states': No scheme supplied. Perhaps you meant https://none/api/states?

Python script exited with code 1 Devices saved successfully

`

I am not putting anything in for spotify because I don't have spotify.

I'll try running the config file and update.

jackbaca commented 3 months ago

Now getting this:

Server started on http://localhost:3000 2024-07-20 08:55:09.590 Electron[32269:511670] WARNING: Secure coding is not enabled for restorable state! Enable secure coding by implementing NSApplicationDelegate.applicationSupportsSecureRestorableState: and returning YES. API keys are empty, initializing setup screen... Config Python Error: Traceback (most recent call last): File "/Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/config.py", line 3, in <module> import speech_recognition as sr ModuleNotFoundError: No module named 'speech_recognition'

jackbaca commented 3 months ago

After manually inputting the api keys into the api doc, recloning the git, and manually installing all of the modules, I get this.

`Starting the Node.js application...

m.i.l.e.s@2.0.0 start electron .

Server started on http://localhost:3000 2024-07-20 09:21:44.776 Electron[34107:537717] WARNING: Secure coding is not enabled for restorable state! Enable secure coding by implementing NSApplicationDelegate.applicationSupportsSecureRestorableState: and returning YES. API keys are set, starting server and backend... Server is already running on port 3000 Python Error: /Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/main.py:1: DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13 from cgi import print_directory

Python Output: Tool list JSON has been saved to /Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/plugin_tool_list.json

Python Error: /Users/jackbaca/Miles-env/lib/python3.11/site-packages/pydub/utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)

Python Output: tflite_runtime is not available on macOS, using ONNX model.

Python Error: Traceback (most recent call last): File "/Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/main.py", line 1198, in

Python Error: main() File "/Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/main.py", line 1128, in main owwModel = initialize_wake_word_model() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/M.I.L.E.S/Miles-V2/main.py", line 1118, in initialize_wake_word_model

Python Error: owwModel = Model(wakeword_models=[MODEL_PATH], inference_framework=INFERENCE_FRAMEWORK) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Python Error: ^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/openwakeword/utils.py", line 686, in wrapped

Python Error: return func(*args, **new_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/openwakeword/model.py", line 213, in init

Python Error: self.preprocessor = AudioFeatures(inference_framework=inference_framework, **kwargs)

Python Error: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/openwakeword/utils.py", line 84, in init

Python Error: self.melspec_model = ort.InferenceSession(melspec_model_path, sess_options=sessionOptions, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_inference_collection.py", line 419, in init

Python Error: self._create_inference_session(providers, provider_options, disabled_optimizers)

Python Error: File "/Users/jackbaca/Miles-env/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_inference_collection.py", line 472, in _create_inference_session sess = C.InferenceSession(session_options, self._model_path, True, self._read_config_from_model)

Python Error: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ onnxruntime.capi.onnxruntime_pybind11_state.NoSuchFile: [ONNXRuntimeError] : 3 : NO_SUCHFILE : Load model from /Users/jackbaca/Miles-env/lib/python3.11/site-packages/openwakeword/resources/models/melspectrogram.onnx failed:Load model /Users/jackbaca/Miles-env/lib/python3.11/site-packages/openwakeword/resources/models/melspectrogram.onnx failed. File doesn't exist

Python script exited with code: 1`

small-cactus commented 3 months ago

Okay that last error occurs when the config file isn’t ran manually, try running python3 config.py, you’ll have to wait a long time for it to finish, but it downloads the missing files.

jackbaca commented 3 months ago

Ya that seemed to make a difference but then...

Screenshot 2024-07-20 at 11 29 39 AM
small-cactus commented 3 months ago

Reinstall every module from the requirements.txt file manually 1 by 1 using pip3 and pip both.