diff options
Diffstat (limited to 'tools/search_jina.sh')
| -rwxr-xr-x | tools/search_jina.sh | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/search_jina.sh b/tools/search_jina.sh new file mode 100755 index 0000000..3e6d706 --- /dev/null +++ b/tools/search_jina.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash +set -e + +# @describe Perform a web search using Jina 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 JINA_API_KEY The api key +# @env JINA_MAX_RESULTS=5 The max results to return. +# @option --query! The query to search for. + +main() { + curl_args=("-H" "Accept: application/json") + if [[ -n "$JINA_API_KEY" ]]; then + curl_args+=("-H" "Authorization: Bearer $JINA_API_KEY") + fi + encoded_query="$(jq -nr --arg q "$argc_query" '$q|@uri')" + curl -fsSL "${curl_args[@]}" "https://s.jina.ai/$encoded_query" | \ + jq '[.data[:'"$JINA_MAX_RESULTS"'] | .[] | {title: .title, url: .url, description: .description}]' \ + >> "$LLM_OUTPUT" +} + +eval "$(argc --argc-eval "$0" "$@")" |
