pdf_gemini 0.0.3 copy "pdf_gemini: ^0.0.3" to clipboard
pdf_gemini: ^0.0.3 copied to clipboard

This package provides a simple way to interact and chat with pdf files using google gemini.

example/main.dart

// ignore_for_file: avoid_print

import 'dart:io';
import 'package:pdf_gemini/pdf_gemini.dart';
import 'package:pdf_gemini/src/genai_generated_response_model.dart'; // Ensure this package is included in your pubspec.yaml

void main() async {
  // Replace with your actual Gemini API key
  const String geminiApiKey = 'YOUR_GEMINI_API_KEY';

  // Create an instance of GenaiClient
  final genaiClient = GenaiClient(geminiApiKey: geminiApiKey);

  // Example file data (replace with actual file data)
  File file = File('' /* Your file path here */);
  String fileName = 'example.pdf';
  String fileType = 'pdf';

  try {
    // Upload a file and get the GenAI file
    GenaiFile uploadedFile = await genaiClient.genaiFileManager.uploadFile(
      fileName,
      fileType,
      file.readAsBytesSync(),
    );

    print('Uploaded File: ${uploadedFile.displayName}');

    // Generate content using the uploaded file
    String prompt = "Can you add a few more lines to this poem?";
    GenaiGeneratedResponseModel response = await genaiClient.promptDocument(
      uploadedFile.displayName,
      uploadedFile.mimeType,
      file.readAsBytesSync(),
      prompt,
    );

    print('Generated Text: ${response.text}');

    if (response.citationUri != null) {
      print('Citation URI: ${response.citationUri}');
    }

    // Retrieve all uploaded files
    List<GenaiFile> uploadedFiles =
        await genaiClient.genaiFileManager.getUploadedFiles();

    print('Uploaded Files:');
    for (var file in uploadedFiles) {
      print('- ${file.displayName} (${file.sizeBytes} bytes)');
    }
  } catch (e) {
    print('Error: $e');
  }
}
copied to clipboard
3
likes
160
points
58
downloads

Publisher

verified publisherjoegakah.com

Weekly Downloads

2024.09.23 - 2025.04.07

This package provides a simple way to interact and chat with pdf files using google gemini.

Homepage
Repository (GitHub)

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

dio, flutter

More

Packages that depend on pdf_gemini