devika
devika copied to clipboard
added web interface, gemini 1.0, 1.5, duckduckgo, google search api, bun install in setup.sh
This pull request makes the following changes.
- Added gemini 1.0, 1.5 support
- Added duckduckgo web search support
- changed npm install to bun install in setup.sh
Solved the following issue #97 #65 #71 #35 #6
second commit
- Added support for google search api
- Corrected set_gemini_api_key
Solved the following issue #90 #38
Edit new
Also made the following changes.
- Added support for web_search interface
-
to change web_search value using config file change WEB_SEARCH in config.toml accepted values - google|bing|ddgs
-
to change web_search value using cmd
python devika.py --websearch <type>
replacewith google|bing|ddgs
python devika.py
uses ddgs as default
- to change web_search value using api request in /api/execute-agent pass web_search along with other data
- Also corrected the error caused while using ollama local models
changed "ollama" to "client" in inference function
Gemini Working 👍
Does system check presence of at least one api-key for DuckDuckGO \ Bing \ Google? would be good to have some system message in console " api key for X found, search via X will be used"
System does not check for any one api, you have to select the model , it will be good to have a console message so we can check if the api keys are working properly or not.
On Sun, 24 Mar 2024 at 17:43, MaksymSofer @.***> wrote:
Does system check presence of at least one api-key for DuckDuckGO \ Bing
Google? would be good to have some system message in console " api key for X found, search via X will be used"— Reply to this email directly, view it on GitHub https://github.com/stitionai/devika/pull/99#issuecomment-2016789574, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARC6PYEPEXG4LHHVPQPSCJ3YZ2YPJAVCNFSM6AAAAABFFI5B66VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMJWG44DSNJXGQ . You are receiving this because you commented.Message ID: @.***>
thanks u, it is working
Devika won't start - what could be the problem?
24.03.28 20:13:01: root: INFO : /api/token-usage GET 24.03.28 20:13:01: root: DEBUG : /api/token-usage GET - Response: { "token_usage": 0 }
24.03.28 20:13:01: root: INFO : /api/project-list GET 24.03.28 20:13:01: root: DEBUG : /api/project-list GET - Response: { "projects": [ "Test01", "Test02" ] }
24.03.28 20:13:01: root: INFO : /api/model-list GET 24.03.28 20:13:01: root: DEBUG : /api/model-list GET - Response: { "models": [ [ "Claude 3 Opus", "claude-3-opus-20240229" ], [ "Claude 3 Sonnet", "claude-3-sonnet-20240229" ], [ "Claude 3 Haiku", "claude-3-haiku-20240307" ], [ "GPT-4 Turbo", "gpt-4-0125-preview" ], [ "GPT-3.5", "gpt-3.5-turbo-0125" ], [ "Gemini 1.0 Pro", "gemini-1.0-pro" ], [ "Gemini 1.5 Pro", "gemini-1.5-pro" ] ] }
24.03.28 20:13:01: root: INFO : /api/get-agent-state POST 24.03.28 20:13:01: root: DEBUG : /api/get-agent-state POST - Response: { "state": null }
24.03.28 20:13:01: root: INFO : /api/get-messages POST 24.03.28 20:13:01: root: DEBUG : /api/get-messages POST - Response: { "messages": [ { "from_devika": false, "message": "\u0447\u0435\u043c \u043c\u043e\u0436\u0435\u0448\u044c \u043f\u043e\u043c\u043e\u0447\u044c ", "timestamp": "2024-03-28 20:04:37" }, { "from_devika": false, "message": "\u0447\u0435\u043c \u043c\u043e\u0436\u0435\u0448\u044c \u043f\u043e\u043c\u043e\u0447\u044c", "timestamp": "2024-03-28 20:11:47" } ] }
I'm new to Github - if I asked the wrong question - I apologize in advance.
can u come to discord channel of devika
Would love to see duckduckgo working as well! Looking forward to when this is verified and merged in 🙏
Solved conflict here so closing #246
Also made the following changes.
- Added support for web_search interface
-
to change web_search value using config file change WEB_SEARCH in config.toml accepted values - google|bing|ddgs
-
to change web_search value using cmd
python devika.py --websearch <type>
replacewith google|bing|ddgs
python devika.py
uses ddgs as default
- to change web_search value using api request in /api/execute-agent pass web_search along with other data
- Also corrected the error caused while using ollama local models
changed "ollama" to "client" in inference function
Thank you so much, I am merging this now! 🙌 ❤️
Hi,
Why is there no Gemini 1.5 pro available, only 1.0 ?
Also, having this issue with gemini (the requests are all simple research)
Exception in thread Thread-3 (<lambda>):
Traceback (most recent call last):
File "/home/nulled/miniconda3/lib/python3.11/threading.py", line 1038, in _bootstrap_inner
self.run()
File "/home/nulled/miniconda3/lib/python3.11/threading.py", line 975, in run
self._target(*self._args, **self._kwargs)
File "/home/nulled/Downloads/LLM_Applications/devika/devika.py", line 96, in <lambda>
thread = Thread(target=lambda: agent.execute(message, project_name))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/nulled/Downloads/LLM_Applications/devika/src/agents/agent.py", line 347, in execute
search_results = self.search_queries(queries, project_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/nulled/Downloads/LLM_Applications/devika/src/agents/agent.py", line 113, in search_queries
results[query] = self.formatter.execute(data, project_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/nulled/Downloads/LLM_Applications/devika/src/agents/formatter/formatter.py", line 21, in execute
response = self.llm.inference(raw_text, project_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/nulled/Downloads/LLM_Applications/devika/src/llm/llm.py", line 96, in inference
response = model.inference(self.model_id, prompt).strip()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/nulled/Downloads/LLM_Applications/devika/src/llm/gemini_client.py", line 14, in inference
return response.text
^^^^^^^^^^^^^
File "/home/nulled/Downloads/LLM_Applications/devika/.venv/lib/python3.11/site-packages/google/generativeai/types/generation_types.py", line 347, in text
raise ValueError(
ValueError: The `response.text` quick accessor only works when the response contains a valid `Part`, but none was returned. Check the `candidate.safety_ratings` to see if the response was blocked.