Class: Raif::ModelTools::FetchUrl
- Inherits:
-
Raif::ModelTool
- Object
- Raif::ModelTool
- Raif::ModelTools::FetchUrl
- Defined in:
- app/models/raif/model_tools/fetch_url.rb
Class Method Summary collapse
Class Method Details
.observation_for_invocation(tool_invocation) ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'app/models/raif/model_tools/fetch_url.rb', line 20 def observation_for_invocation(tool_invocation) return "No results found" unless tool_invocation.result.present? <<~OBSERVATION Result Status: #{tool_invocation.result["status"]} Result Content: #{tool_invocation.result["content"]} OBSERVATION end |
.process_invocation(tool_invocation) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'app/models/raif/model_tools/fetch_url.rb', line 30 def process_invocation(tool_invocation) url = tool_invocation.tool_arguments["url"] response = Faraday.get(url) readable_content = Raif::Utils::ReadableContentExtractor.new(response.body).extract_readable_content markdown_content = Raif::Utils::HtmlToMarkdownConverter.convert(readable_content) tool_invocation.update!( result: { status: response.status, content: markdown_content } ) tool_invocation.result end |