@@ -1,21 +1,20 @@
|
||||
use std::sync::Arc;
|
||||
|
||||
use dotenvy::dotenv;
|
||||
use futures::StreamExt;
|
||||
use goose::agents::{Agent, AgentEvent, ExtensionConfig};
|
||||
use goose::config::{DEFAULT_EXTENSION_DESCRIPTION, DEFAULT_EXTENSION_TIMEOUT};
|
||||
use goose::conversation::message::Message;
|
||||
use goose::conversation::Conversation;
|
||||
use goose::providers::databricks::DatabricksProvider;
|
||||
use goose::providers::create_with_named_model;
|
||||
use goose::providers::databricks::DATABRICKS_DEFAULT_MODEL;
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() {
|
||||
// Setup a model provider from env vars
|
||||
let _ = dotenv();
|
||||
|
||||
let provider = Arc::new(DatabricksProvider::default());
|
||||
let provider = create_with_named_model("databricks", DATABRICKS_DEFAULT_MODEL)
|
||||
.await
|
||||
.expect("Couldn't create provider");
|
||||
|
||||
// Setup an agent with the developer extension
|
||||
let agent = Agent::new();
|
||||
let _ = agent.update_provider(provider).await;
|
||||
|
||||
|
||||
@@ -1,22 +1,19 @@
|
||||
use anyhow::Result;
|
||||
use dotenvy::dotenv;
|
||||
use goose::conversation::message::Message;
|
||||
use goose::providers::{
|
||||
base::{Provider, Usage},
|
||||
databricks::DatabricksProvider,
|
||||
};
|
||||
use goose::providers::databricks::DATABRICKS_DEFAULT_MODEL;
|
||||
use goose::providers::{base::Usage, create_with_named_model};
|
||||
use tokio_stream::StreamExt;
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() -> Result<()> {
|
||||
// Load environment variables from .env file
|
||||
dotenv().ok();
|
||||
|
||||
// Clear any token to force OAuth
|
||||
std::env::remove_var("DATABRICKS_TOKEN");
|
||||
|
||||
// Create the provider
|
||||
let provider = DatabricksProvider::default();
|
||||
let provider = create_with_named_model("databricks", DATABRICKS_DEFAULT_MODEL).await?;
|
||||
|
||||
// Create a simple message
|
||||
let message = Message::user().with_text("Tell me a short joke about programming.");
|
||||
|
||||
@@ -2,12 +2,14 @@ use anyhow::Result;
|
||||
use base64::{engine::general_purpose::STANDARD as BASE64, Engine as _};
|
||||
use dotenvy::dotenv;
|
||||
use goose::conversation::message::Message;
|
||||
use goose::providers::{
|
||||
bedrock::BedrockProvider, databricks::DatabricksProvider, openai::OpenAiProvider,
|
||||
};
|
||||
use goose::providers::anthropic::ANTHROPIC_DEFAULT_MODEL;
|
||||
use goose::providers::create_with_named_model;
|
||||
use goose::providers::databricks::DATABRICKS_DEFAULT_MODEL;
|
||||
use goose::providers::openai::OPEN_AI_DEFAULT_MODEL;
|
||||
use rmcp::model::{CallToolRequestParam, Content, Tool};
|
||||
use rmcp::object;
|
||||
use std::fs;
|
||||
use std::sync::Arc;
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() -> Result<()> {
|
||||
@@ -15,12 +17,11 @@ async fn main() -> Result<()> {
|
||||
dotenv().ok();
|
||||
|
||||
// Create providers
|
||||
let providers: Vec<Box<dyn goose::providers::base::Provider + Send + Sync>> = vec![
|
||||
Box::new(DatabricksProvider::default()),
|
||||
Box::new(OpenAiProvider::default()),
|
||||
Box::new(BedrockProvider::default()),
|
||||
let providers: Vec<Arc<dyn goose::providers::base::Provider>> = vec![
|
||||
create_with_named_model("databricks", DATABRICKS_DEFAULT_MODEL).await?,
|
||||
create_with_named_model("openai", OPEN_AI_DEFAULT_MODEL).await?,
|
||||
create_with_named_model("anthropic", ANTHROPIC_DEFAULT_MODEL).await?,
|
||||
];
|
||||
|
||||
for provider in providers {
|
||||
// Read and encode test image
|
||||
let image_data = fs::read("crates/goose/examples/test_assets/test_image.png")?;
|
||||
|
||||
Reference in New Issue
Block a user