The world remains entranced with the seemingly endless capabilities of artificial intelligence. For years, we were gripped by the way science fiction depicted AI in imagined futures. Now, the reality is that AI is radically transforming our world. For businesses, it’s no longer sufficient to simply maintain the status quo in order to survive, and many are grappling with the fact that ongoing success relies on being able to adapt in the face of this major disruption.
Where can companies begin? Well, exploring how your business can benefit from AI is one place to start. In this spirit of adaptation and exploration, we felt it only fitting to ask ourselves: “How can AI revolutionise the way we deliver digital transformation?” To discover the answer, we embarked on a journey that mirrored much of the typical software development process, with a commitment to being uncompromising on excellence. In this blog post, we’ll share our journey from the initial conceptualisation of our AI project to the sophisticated solutions we have today. Along the way, we’ll highlight key milestones, challenges, and insights that can serve as a guide for others venturing into the world of artificial intelligence.
Conceptualisation: Planting the Seed
Our journey began with a spark of an idea about how AI could revolutionise our processes and offerings. Like many software projects, the initial stage was all about brainstorming, research, and identifying potential applications. We broke this phrase down into:
Market Research: Understanding the current landscape of AI technology and how it could benefit the way we work as an organisation.
Problem Identification: Pinpointing specific issues and opportunities within our operations that AI could address.
Goal Setting: Establishing clear, achievable objectives for what we want to accomplish with AI.
Planning: Laying the Foundation
Once the concept was solidified, we moved on to planning. This stage is crucial in any software development process, as it lays the groundwork for everything that follows. Key planning activities included:
Resource Allocation: Determining the budget, time, and talent required to bring our AI project to life.
Risk Assessment: Identifying potential challenges and developing strategies to mitigate them.
Technology Selection: Choosing the right tools, frameworks, and platforms to support our AI development.
Development: Bringing Ideas to Life
With a solid plan in place, we could begin development. This is where the magic happens—where ideas transform into tangible solutions. Our development journey mirrored many typical software projects:
Prototyping: Creating initial versions of our AI models to test feasibility and functionality.
Iteration: Continuously refining our models based on feedback and performance metrics.
Collaboration: Working closely with cross-functional teams to ensure our AI solutions are integrated seamlessly with existing systems.
Testing: Ensuring Quality and Reliability
No software project should be complete without rigorous testing. Our commitment to a philosophy of excellence meant that this phase was absolutely paramount, as it should be in all development journeys. This phase involved:
Validation: Verifying that our AI models performed as expected and met our initial goals.
Optimization: Fine-tuning our models to enhance accuracy, efficiency, and scalability.
User Feedback: Gathering input from end-users to identify areas for improvement and ensure our solutions met their needs – and our standards.
Deployment: Bringing AI to the Forefront
With our models tested and refined, we moved into the deployment phase. This is where our AI solutions began to make a real impact on our organisation. Key steps included:
Integration: Seamlessly incorporating our AI models into existing workflows and systems.
Monitoring: Continuously tracking the performance of our AI solutions to ensure they delivered the desired outcomes.
Scaling: Expanding our AI capabilities to cover more areas and solve additional problems.
Detailed Case Studies
Case Study 1: Initial Proof of Concept (POC)
Our journey started with the idea of creating a POC to leverage our knowledge assets built over the years. We wanted to streamline our information gathering using AI. We began by aggregating our data and storing it in a cloud location, using Google Vertex for building the model. Our exploration included platforms like Hugging Face, OpenAI, and Google’s Vertex AI.
Initially, we jumped headfirst into development without a clear understanding of the models or the outcomes we wanted. This lack of clarity caused significant challenges, reminding us how important it is to have a deep understanding of the use case and our objectives before starting a POC.
Case Study 2: Utilising Google Cloud Environment
Our next attempt involved utilising the Google Cloud environment, which we were familiar with. We built Python scripts to extract local data sets and import them into Google BigQuery. The process involved extracting raw text from documents, generating embeddings, and storing these embeddings within BigQuery. However, we underestimated the complexity of extracting data without maintaining the context, particularly from documents containing diagrams. This highlighted the need to spend time understanding the functional and non-functional elements of initiatives like these and being realistic about our goals.
Case Study 3: Pivot to OpenAI Infrastructure
Learning from our previous attempts, we pivoted to an ontology-based approach, using OpenAI’s infrastructure. We built assistants that processed information in a more organised, structured way – as an enterprise architect would – helping us during the discovery phase and assessments. This approach was more successful because we spent time properly defining our goals and focusing our efforts in the right areas.
Case Study 4: Building a Production-Ready Environment
Our next goal was to build a production-ready environment using a retrieval-augmented generation (RAG) model. We found an excellent open-source project, Researcher GT, and extended it for our needs. This project enhanced our productivity by allowing us to quickly generate research outputs, improving our ability to respond to client inquiries efficiently.
Technical Challenges
Data Aggregation and Context Maintenance: Initial attempts faced issues with extracting meaningful data without losing context, particularly from documents with diagrams. Solutions involved using Google’s document OCR capabilities but faced challenges in preprogramming content inference.
Use Case Clarity and Scope Management: Initial POC suffered from lack of clear use case definition and understanding of technology scope. Subsequent efforts focused on more defined objectives and realistic expectations, which proved more successful.
Platform-Specific Limitations: Challenges in migrating content built within specific platforms to others. The need for clear functional and non-functional requirements to avoid overcomplicating solutions with enterprise-level tools for basic needs.
Lessons Learned: Insights for Future Projects
Reflecting on our AI journey, several key lessons stand out that are applicable to any organisation going down a similar path:
Start with a Clear Vision’: Having a well-defined goal from the outset is crucial for guiding your AI project. Start with a deep understanding of what problem is being solved and progress from there. Incorporate AI when it makes sense to do so, not ‘just because’.
Plan Thoroughly: Adequate planning can save time and resources in the long run by preemptively addressing potential challenges.
Iterate and Improve: Continuous improvement is key to developing effective AI solutions. Be prepared to iterate based on feedback and performance data.
Embrace Collaboration: AI projects often require input from various departments. Foster a collaborative environment to leverage diverse expertise.
Prioritise User Feedback: Ultimately, the success of your AI solutions depends on how well they meet user needs. Regularly solicit and incorporate user feedback.
Maintain Quality: Staying committed to our philosophy of excellence guided us through each learning moment.
Future Directions
Moving forward, we aim to integrate our existing capabilities, such as OCR, custom encodings, and OpenAI assistants, to create comprehensive RAG assistants. These assistants will be able to query existing information, generate text, classify content, and provide domain-specific recommendations. This integration will enhance our ability to create content aligned with our organisational intellectual property and technical focus and ultimately, enable us to guide you through your transformation journey with greater ease.
From a big picture perspective, this project demonstrated two key takeaways for us. Firstly, going through this exercise showed us that AI has significant promise, but isn’t a ‘silver bullet’. It won’t solve your problems without an incredibly clear vision and robust approach to execute it. In this way, we got to experience first-hand the power of human creativity augmented, rather than replaced, by the productivity-boosting powers of AI. Secondly, this process showed us that it is in fact possible to iterate incredibly quickly with AI at low costs while generating value along the way – a highly promising outcome!
Reflecting on our AI Journey
In reflecting on our AI journey, we were reminded of the value of learning by doing. While we faced many challenges and dead ends, each experience provided valuable insights. Our successes came when we had a clear use case, understood our limitations, and were realistic about our goals. Incremental improvements and continuous learning proved to be the most effective approach. By following our own advice on building software, we found the best path forward: Take your time, understand your goals, acknowledge your limitations, and move forward incrementally, knowing that excellence is achieved through constant improvement.
Comments