Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix duckduckgo rate limiting #4592

Merged

Conversation

waynehamadi
Copy link
Contributor

@waynehamadi waynehamadi commented Jun 6, 2023

Background

DuckDuckGo is rate limiting us by returning empty arrays. So our challenges are now flaky.

Changes

Retrial mechanism:

  • if empty array, try 3 times and sleep 1 second.

**I know it's weird that duckduckgo returns an empty generator when we get rate limited, but I didn't find any information that proves the opposite. If someone finds something let me know.
The problem

Documentation

Test Plan

PR Quality Checklist

  • My pull request is atomic and focuses on a single change.
  • I have thoroughly tested my changes with multiple different prompts.
  • I have considered potential risks and mitigations for my changes.
  • I have documented my changes clearly and comprehensively.
  • I have not snuck in any "extra" small tweaks changes.
  • I have run the following commands against my code to ensure it passes our linters:
    black .
    isort .
    mypy
    autoflake --remove-all-unused-imports --recursive --ignore-init-module-imports autogpt tests --in-place

@vercel
Copy link

vercel bot commented Jun 6, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 6, 2023 9:34pm

@Auto-GPT-Bot
Copy link
Contributor

You changed AutoGPT's behaviour. The cassettes have been updated and will be merged to the submodule when this Pull Request gets merged.

@codecov
Copy link

codecov bot commented Jun 6, 2023

Codecov Report

Patch coverage: 100.00% and project coverage change: +0.04 🎉

Comparison is base (53efa8f) 69.52% compared to head (3d6d543) 69.57%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4592      +/-   ##
==========================================
+ Coverage   69.52%   69.57%   +0.04%     
==========================================
  Files          72       72              
  Lines        3551     3556       +5     
  Branches      569      569              
==========================================
+ Hits         2469     2474       +5     
  Misses        892      892              
  Partials      190      190              
Impacted Files Coverage Δ
autogpt/commands/google_search.py 95.74% <100.00%> (+0.50%) ⬆️

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@waynehamadi waynehamadi force-pushed the fix-duckduckgo-rate-limiting branch from d1bf94b to d4404ba Compare June 6, 2023 03:31
@github-actions github-actions bot added size/m and removed size/l labels Jun 6, 2023
@Boostrix
Copy link
Contributor

Boostrix commented Jun 6, 2023

does that mean that the issue goes entirely away if we mock/cache DDG queries ?

@waynehamadi
Copy link
Contributor Author

@Boostrix for information retrieval yes. I am not saying flakiness is gone.

@vercel vercel bot temporarily deployed to Preview June 6, 2023 21:34 Inactive
@Pwuts
Copy link
Member

Pwuts commented Jun 6, 2023

The docs of the client library say to wait 0.75s between pages, which may be an indication that there is a minimum interval between requests.

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
@vercel
Copy link

vercel bot commented Jun 6, 2023

Deployment failed with the following error:

Resource is limited - try again in 18 minutes (more than 100, code: "api-deployments-free-per-day").

@Pwuts Pwuts merged commit 1b04e5c into Significant-Gravitas:master Jun 6, 2023
9 of 10 checks passed
lc0rp added a commit that referenced this pull request Jun 19, 2023
Co-authored-by: Reinier van der Leer <github@pwuts.nl>
Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
Co-authored-by: k-boikov <64261260+k-boikov@users.noreply.github.com>
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
Co-authored-by: Merwane Hamadi <merwanehamadi@gmail.com>
Co-authored-by: Richard Beales <rich@richbeales.net>
Co-authored-by: Luke K <2609441+lc0rp@users.noreply.github.com>
Co-authored-by: Luke K (pr-0f3t) <2609441+lc0rp@users.noreply.github.com>
Co-authored-by: Erik Peterson <e@eriklp.com>
Co-authored-by: Auto-GPT-Bot <github-bot@agpt.co>
Co-authored-by: Benny van der Lans <49377421+bfalans@users.noreply.github.com>
Co-authored-by: Jan <jan-github@phobia.de>
Co-authored-by: Robin Richtsfeld <robin.richtsfeld@gmail.com>
Co-authored-by: Marc Bornträger <marc.borntraeger@gmail.com>
Co-authored-by: Stefan Ayala <stefanayala3266@gmail.com>
Co-authored-by: javableu <45064273+javableu@users.noreply.github.com>
Co-authored-by: DGdev91 <DGdev91@users.noreply.github.com>
Co-authored-by: Kinance <kinance@gmail.com>
Co-authored-by: digger yu <digger-yu@outlook.com>
Co-authored-by: David <scenaristeur@gmail.com>
Co-authored-by: gravelBridge <john.tian31@gmail.com>
Fix Python CI "update cassettes" step (#4591)
fix CI (#4596)
Fix inverted logic for deny_command (#4563)
fix current_score.json generation (#4601)
Fix duckduckgo rate limiting (#4592)
Fix debug code challenge (#4632)
Fix issues with information retrieval challenge a (#4622)
fix issues with env configuration and .env.template (#4630)
Fix prompt issue causing 'No Command' issues and challenge to fail (#4623)
Fix benchmark logs (#4653)
Fix typo in docs/setup.md (#4613)
Fix run.sh shebang (#4561)
Fix autogpt docker image not working because missing prompt_settings (#4680)
Fix execute_command coming from plugins (#4730)
jordankanter pushed a commit to jordankanter/Auto-GPT that referenced this pull request Nov 12, 2023
* Fix duckduckgo rate limiting

* use list instead of loop

---------

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
jordankanter pushed a commit to jordankanter/Auto-GPT that referenced this pull request Nov 12, 2023
* Fix duckduckgo rate limiting

* use list instead of loop

---------

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
jordankanter pushed a commit to jordankanter/Auto-GPT that referenced this pull request Nov 12, 2023
* Fix duckduckgo rate limiting

* use list instead of loop

---------

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet

4 participants