aboutsummaryrefslogtreecommitdiffstats
path: root/tools/web_search_perplexity.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/web_search_perplexity.sh')
-rwxr-xr-xtools/web_search_perplexity.sh30
1 files changed, 30 insertions, 0 deletions
diff --git a/tools/web_search_perplexity.sh b/tools/web_search_perplexity.sh
new file mode 100755
index 0000000..95b3d27
--- /dev/null
+++ b/tools/web_search_perplexity.sh
@@ -0,0 +1,30 @@
+#!/usr/bin/env bash
+set -e
+
+# @describe Perform a web search using Perplexity API to get up-to-date information or additional context.
+# Use this when you need current information or feel a search could provide a better answer.
+
+# @env PERPLEXITY_API_KEY! The api key
+# @option --query! The query to search for.
+
+main() {
+ curl -fsS -X POST https://api.perplexity.ai/chat/completions \
+ -H "authorization: Bearer $PERPLEXITY_API_KEY" \
+ -H "accept: application/json" \
+ -H "content-type: application/json" \
+ --data '
+{
+ "model": "llama-3-sonar-small-32k-online",
+ "messages": [
+ {
+ "role": "user",
+ "content": "'"$argc_query"'"
+ }
+ ]
+}
+' | \
+ jq -r '.choices[0].message.content' \
+ >> "$LLM_OUTPUT"
+}
+
+eval "$(argc --argc-eval "$0" "$@")"